Wie wäre es mit:
echo "hello" >> <filename>
Wenn Sie den >>Operator verwenden, werden Daten am Ende der Datei angehängt, während bei Verwendung des Operators >der Inhalt der Datei überschrieben wird, falls dieser bereits vorhanden ist.
Sie können auch printfauf die gleiche Weise verwenden:
printf "hello" >> <filename>
Beachten Sie, dass die Verwendung der oben genannten Methoden gefährlich sein kann. Wenn Sie beispielsweise bereits eine Datei haben und Daten an das Ende der Datei anhängen müssen und vergessen, die letzten hinzuzufügen, werden >alle Daten in der Datei zerstört. Sie können dieses Verhalten ändern, indem Sie die noclobberVariable in Ihrem .bashrc:
set -o noclobber
Wenn Sie dies versuchen, erhalten echo "hello" > file.txtSie eine Warnung cannot overwrite existing file.
Um das Schreiben in die Datei zu erzwingen, müssen Sie jetzt die spezielle Syntax verwenden:
echo "hello" >| <filename>
Sie sollten auch wissen, dass standardmäßig echoein nachfolgendes Zeilenumbruchzeichen hinzugefügt wird, das mithilfe des -nFlags unterdrückt werden kann :
echo -n "hello" >> <filename>
Verweise