Ich arbeite an einem Bash-Skript und läuft in ein Problem mit sed die Datei, die ich benutze, um es leer zu leeren.sed überschreiben Datei leer lassen
Hier ist die Blöcke, die die Datei und die Funktion definieren, die ich die Datei zu bereinigen erstellt:
# Define Review Log file
reviewlog=/home/serverreview-$(date +%d%^b%y).txt
# Bleachs the Review Log of the color customization
bleach()
{
sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" $reviewlog >> $reviewlog
}
die Verwendung >> es die Informationen zum Ende der Datei anhängen tut wie es soll . Allerdings, wenn ich benutze:
bleach()
{
sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" $reviewlog > $reviewlog
}
Er verlässt die Ausgabedatei völlig leer
unten ist korrekt. Eliminiere jetzt eine weitere ganze Klasse von Fehlern aus deinem Shell-Scripting, indem du immer Variablenverweise dbl-zitierst, d. H. '" $ Reviewing "' (mit Ausnahme einiger weniger fortgeschrittener Fälle), wenn du 'set-$ @' zum Beispiel verwendest. Gute Präsentation Ihres Q, posten Sie weiter. Viel Glück für jeden. – shellter