GNU/Linux >> Linux Esercitazione >  >> Linux

Come scrivere più stringhe di righe usando Bash con variabili?

#!/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

questo fa quello che vuoi.


La sintassi (<<< ) e il comando utilizzato (echo ) è sbagliato.

Corretto sarebbe:

#!/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

Questa costruzione è chiamata Here Document e può essere trovata nelle pagine man di Bash sotto man --pager='less -p "\s*Here Documents"' bash .


Linux
  1. Come dividere una stringa nello script Bash

  2. Come leggere la penultima riga in un file usando Bash?

  3. Come eseguo più comandi in background in bash in una singola riga?

  4. come limitare la lunghezza della stringa presente in una riga usando Linux

  5. Come eseguire un comando più volte, usando bash shell?

Come commentare in Bash

Come scrivere uno script Bash con esempi

Come leggere i file riga per riga in Bash

Come leggere un file riga per riga in Bash

Come verificare se una stringa contiene una sottostringa in Bash

Come posso modificare le righe precedenti in un comando a più righe in Bash?