Wie fügt man ohne „\n“ einen String an das Ende einer Datei an?

Wie fügt man ohne „\n“ einen String an das Ende einer Datei an?

echo "xxx" >> file_aist ähnlich zu dem, was ich will.

Der Zeichenfolge wird jedoch immer eine neue Zeile hinzugefügt.

Wenn ich nur eine Zeichenfolge ohne neue Zeile anhängen möchte,

Wie es geht?

Vielen Dank~

Antwort1

Verwenden Sie die printfintegrierte Bash-Funktion

printf "xxx" >> file

oder die -nOption echo, die den Zeilenumbruch unterdrückt.

Antwort2

Verwenden Sie printf:

printf "xxx" >> file_a 

Antwort3

Kleine Variation zum Thema, wenn auch etwas ausführlich

awk '1;END{printf "xxx"}' input_file > tmp_file && mv tmp_file input_file 

Oder Sie können dies auch mit Python3 tun:

$ cat -A input.txt                                                                                    
line1$

$ python3 -c "import sys;fd=open(sys.argv[1],'a');fd.write('xxx');fd.close()" input.txt               

$ cat -A input.txt                                                                                    
line1$
xxx

verwandte Informationen