GNU/Linux >> Tutoriales Linux >  >> Linux

Bash:agregue una cadena al final del archivo sin salto de línea

sed '$s/$/yourText2/' list.txt > _list.txt_ && mv -- _list.txt_ list.txt

Si su sed la implementación admite -i opción, podría usar:

sed -i.bck '$s/$/yourText2/' list.txt

Con la segunda solución también tendrá una copia de seguridad (con la primera deberá hacerlo manualmente).

Alternativamente:

ex -sc 's/$/yourText2/|w|q' list.txt 

o

perl -i.bck -pe's/$/yourText2/ if eof' list.txt

Solo usa printf en cambio, ya que no imprime la nueva línea por defecto:

printf "final line" >> file

Prueba

Creemos un archivo y luego agreguemos una línea adicional sin una nueva línea final. Tenga en cuenta que uso cat -vet para ver las nuevas líneas.

$ seq 2 > file
$ cat -vet file
1$
2$
$ printf "the end" >> file
$ cat -vet file
1$
2$
the end

Puede usar el parámetro -n de echo. Así:

$ touch a.txt
$ echo -n "A" >> a.txt
$ echo -n "B" >> a.txt
$ echo -n "C" >> a.txt
$ cat a.txt
ABC

EDITAR:Ajá, ya tenía un archivo que contenía una cadena y una nueva línea. Bueno, dejaré esto aquí de todos modos, podría ser útil para alguien.


Linux
  1. El Bash'?

  2. ¿Agregar algún texto al final del nombre del archivo?

  3. Ir al principio o al final del archivo en Vim [Consejo rápido]

  4. Recorriendo el contenido de un archivo en Bash

  5. Agregue una cadena de prefijo al comienzo de cada línea

Cómo leer un archivo línea por línea en Bash

Sustitución de cadena en Bash

Cómo agregar números de línea a archivos de texto en Linux

¿Cómo agregar una nueva línea al final de un archivo?

Linux:compruebe si hay una línea vacía al final de un archivo

Linux:grep desde ciertas líneas hasta el final del archivo