GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo escribir una cadena de varias líneas usando Bash con variables?

#!/bin/bash
kernel="2.6.39";
distro="xyz";

cat > /etc/myconfig.conf << EOL
line 1, ${kernel}
line 2,
line 3, ${distro}
line 4
line ...
EOL

esto hace lo que quieres.


La sintaxis (<<< ) y el comando utilizado (echo ) está mal.

Correcto sería:

#!/bin/bash

kernel="2.6.39"
distro="xyz"
cat >/etc/myconfig.conf <<EOL
line 1, ${kernel}
line 2, 
line 3, ${distro}
line 4 line
... 
EOL

cat /etc/myconfig.conf

Esta construcción se conoce como Documento Here y se puede encontrar en las páginas de manual de Bash en man --pager='less -p "\s*Here Documents"' bash .


Linux
  1. Cómo escribir un bucle en Bash

  2. Cómo dividir una cadena en Bash Script

  3. ¿Cómo escribo stderr en un archivo mientras uso tee con una tubería?

  4. En Bash, ¿cómo agrego una cadena después de cada línea en un archivo?

  5. ¿Cómo escribir un entero en un archivo binario usando Bash?

Cómo comentar en Bash

Cómo escribir un script Bash con ejemplos

Cómo leer archivos línea por línea en Bash

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

Cómo verificar si una cadena contiene una subcadena en Bash

¿Cómo edito líneas anteriores en un comando de varias líneas en Bash?