Untuk urutan perintah yang lebih kompleks, Anda harus mempertimbangkan menggunakan cat
perintah dengan dokumen di sini . Format dasarnya adalah
command > file << END_TEXT
some text here
more text here
END_TEXT
Ada dua perilaku yang agak berbeda tergantung apakah label END_TEXT dikutip atau tidak dikutip:
label yang tidak dikutip : isinya ditulis setelah ekspansi shell yang biasa
label yang dikutip : isi dokumen di sini diperlakukan secara harfiah, tanpa ekspansi shell yang biasa
Misalnya perhatikan skrip berikut
#!/bin/bash
var1="VALUE 1"
var2="VALUE 2"
cat > file1 << EOF1
do some commands on "$var1"
and/or "$var2"
EOF1
cat > file2 << "EOF2"
do some commands on "$var1"
and/or "$var2"
EOF2
Hasilnya
$ cat file1
do some commands on "VALUE 1"
and/or "VALUE 2"
dan
$ cat file2
do some commands on "$var1"
and/or "$var2"
Jika Anda mengeluarkan perintah shell dari skrip Anda, Anda mungkin menginginkan formulir yang dikutip.