Suchen und Ersetzen von Farben in CSS-Dateien über die Befehlszeile

Suchen und Ersetzen von Farben in CSS-Dateien über die Befehlszeile

Ich habe eine Menge CSS-Dateien in einem Ordner und möchte in der Lage sein, in all diesen Dateien in einem Durchgang über die Befehlszeile unterschiedliche Werte zu suchen und zu ersetzen.

Wenn ich beispielsweise die Farbe #dadce4 durch #ececec ersetzen möchte, kann dies problemlos mit einem einzigen Befehl erledigt werden?

Nur um das klarzustellen: Ich suche nach etwas, das Änderungen an allen Dateien innerhalb eines Verzeichnisses und aller Unterverzeichnisse vornimmt, ohne einen Dateinamen angeben zu müssen.

Antwort1

Sie können sed verwenden, um Textbeispiel zu suchen und zu ersetzen: sed -i 's/dadce4/ececec/g' file.css Das gam Ende bedeutet, dass alle Farben in der Datei ersetzt werden, nicht nur das erste Vorkommen.

Antwort2

Führen Sie den folgenden Befehl aus, um das gewünschte Ergebnis zu erzielen.

awk '{gsub("dadce4","ececec”,$0);print $0}' filename >>output file

verwandte Informationen