cat >> filename
This is text, perhaps pasted in from some other source.
Or else entered at the keyboard, doesn't matter.
^D
Esencialmente, puede volcar cualquier texto que desee en el archivo. CTRL-D envía una señal de fin de archivo, que finaliza la entrada y lo devuelve al shell.
Otra forma posible es:
echo "text" | tee -a filename >/dev/null
El -a se agregará al final del archivo.
Si necesita sudo , usa:
echo "text" | sudo tee -a filename >/dev/null
¿Qué tal:
echo "hello" >> <filename>
Usando el >> el operador agregará datos al final del archivo, mientras usa el > sobrescribirá el contenido del archivo si ya existe.
También puedes usar printf de la misma manera:
printf "hello" >> <filename>
Tenga en cuenta que puede ser peligroso usar lo anterior. Por ejemplo, si ya tiene un archivo y necesita agregar datos al final del archivo y olvida agregar el último > todos los datos en el archivo serán destruidos. Puede cambiar este comportamiento configurando el noclobber variable en su .bashrc :
set -o noclobber
Ahora, cuando intentas hacer echo "hello" > file.txt recibirá una advertencia que dice cannot overwrite existing file .
Para forzar la escritura en el archivo, ahora debe usar la sintaxis especial:
echo "hello" >| <filename>
También debes saber que por defecto echo agrega un carácter final de nueva línea que se puede suprimir usando el -n bandera:
echo -n "hello" >> <filename>
Referencias
echo(1) - Linux man pagenoclobber variableI/O Redirection