GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara menulis beberapa baris string menggunakan Bash dengan variabel?

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

ini melakukan apa yang Anda inginkan.


Sintaks (<<< ) dan perintah yang digunakan (echo ) salah.

Yang benar adalah:

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

Konstruksi ini disebut sebagai Dokumen Di Sini dan dapat ditemukan di halaman manual Bash di bawah man --pager='less -p "\s*Here Documents"' bash .


Linux
  1. Cara Memisahkan String dalam Skrip Bash

  2. Bagaimana cara membaca baris kedua hingga terakhir dalam file menggunakan Bash?

  3. Bagaimana cara menjalankan beberapa perintah latar belakang di bash dalam satu baris?

  1. menggunakan acak untuk menghasilkan string acak di bash

  2. Bash - Cara mencetak string multi baris (dengan '\n') menggunakan printf

  3. Bagaimana cara menjalankan perintah berkali-kali, menggunakan bash Shell?

  1. Cara menulis loop di Bash

  2. Bagaimana cara menulis stderr ke file saat menggunakan tee dengan pipa?

  3. Di Bash, bagaimana cara menambahkan string setelah setiap baris dalam file?