Como adicionar string ao final de um arquivo sem '\n'?

Como adicionar string ao final de um arquivo sem '\n'?

echo "xxx" >> file_aé semelhante ao que eu quero.

Mas sempre anexa uma string com uma nova linha.

Se eu quiser apenas anexar uma string sem uma nova linha,

Como fazer isso?

Obrigado ~

Responder1

Use a printffunção bash integrada

printf "xxx" >> file

ou a -nopção echo, que suprime a nova linha.

Responder2

Usar printf:

printf "xxx" >> file_a 

Responder3

Pequena variação sobre o tema, embora um tanto detalhada

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

Ou você também pode fazer isso com python3:

$ 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

informação relacionada