Hay muchas maneras de añadir texto a un archivo en sistemas Unix/Linux. Este artículo recopila varios métodos para principiantes y usuarios experimentados.
Usando la utilidad cat
cat permite escribir datos en un archivo. Observa estos ejemplos:
- Ejemplo 1: Sobrescribe el archivo. (Requiere permisos de superusuario)
cat > /etc/yum.repos.d/docker.repo <<EOF
TEXTO AQUÍ
EOFDonde:
TEXTO AQUÍrepresenta el texto que quieres agregar.EOFindica el fin del texto a ingresar.
- Ejemplo 2: Añade texto al final del archivo.
cat >> nombre_archivo.txt
TEXTO AQUÍ
^DDonde:
TEXTO AQUÍes el texto a añadir.^D(Ctrl+D) finaliza la entrada de texto.
- Ejemplo 3: Uso con
sudoy redirección.
sudo sh -c 'cat << EOF >> nombre_archivo
TEXTO
AQUÍ
EOF'- Ejemplo 4: Especificando un delimitador.
$ cat > tmp.txt <<TXT
fdsfsdf
dsf
f
s
ff
sf
f
s
TXTAquí, TXT marca el inicio y el final del texto a ingresar.
Usando la utilidad echo
echo inserta texto. Sobrescribe el archivo si se usa > y lo añade al final con >>.
- Ejemplo 1: Sobrescribe el archivo.
echo "Este es un texto de prueba" > /home/$USER/nombre_archivo.txt- Ejemplo 2: Añade texto al final.
echo "Este es un texto de prueba" >> /home/$USER/nombre_archivo.txtUsando la utilidad printf
printf es similar a echo, pero ofrece más control sobre el formato.
- Ejemplo 1: Sobrescribe el archivo.
printf "Hola" > nombre_archivoEjemplo 2: Añade texto al final.
printf "Este es un texto de prueba" >> /home/$USER/nombre_archivo.txtEjemplo 3: Texto de varias líneas.
printf "Hola\nfsdf\ndsf\n\nfsfd\n\ndsf\n" > nombre_archivoUsando la utilidad tee
tee copia la entrada estándar a un archivo y a la salida estándar.
tee -a nombre_archivo << EOF
TEXTO AQUÍ
EOF-a añade al final del archivo.
Usando Python
with open("nombre_archivo.txt", "a") as archivo:
archivo.write("TEXTO AQUÍ")Esto abre nombre_archivo.txt en modo append (“a”) y escribe el texto.
Recuerda reemplazar "nombre_archivo.txt" con el nombre de archivo deseado, incluyendo la ruta si es necesario.
Eso es todo. El artículo “Insertar texto en un archivo en Linux” ha terminado.
¿Qué te parece?
Es bueno conocer tu opinión. Deja un comentario.