Ini adalah file saya yang sebenarnya WASfile
#!/bin/sh
sed -i '/^ *$/d' WASfile
sed -i -e '/user=/,/group_1=/{w /tmp/1' -e 'd}' /home/wasdm/WASfile;
Script to Add
read -p "Press [Enter] to continue for Installation"
Sekarang, saya ingin meletakkan skrip berikut di Script untuk Tambah di atas dan kemudian menjalankan skrip WASfile sebagai (yang merupakan kombinasi dari banyak skrip atau perintah).
#!/usr/bin/awk -f
BEGIN { FS="=" }
NR==FNR { a[$1]=$0; next }
$1 in a { $0=a[$1] }
/^#/ { var=$1; sub(/^#/, "", var); if(var in a) { $0=a[var] } }
1
Saya ingin menggabungkan dan menggunakan seperti di bawah ini atau cara yang lebih baik untuk menggabungkan kedua skrip.
#!/bin/sh
sed -i '/^ *$/d' WASfile
sed -i -e '/user=/,/group_1=/{w /tmp/1' -e 'd}' /home/wasdm/WASfile;
#!/usr/bin/awk -f
BEGIN { FS="=" }
NR==FNR { a[$1]=$0; next }
$1 in a { $0=a[$1] }
/^#/ { var=$1; sub(/^#/, "", var); if(var in a) { $0=a[var] } }
1
read -p "Press [Enter] to continue for Installation"
Saya tidak dapat menjalankan Script.
Jadi, saya mencoba mengekstrak naskah AWK ke file lain dan mencoba menjalankan naskah AWK itu. Tapi, masalahnya adalah setelah mengekstraksi, skrip utama WASfile sendiri rusak atau gagal.
#!/bin/sh
sed -i '/^ *$/d' WASfile;
sed -i -e '/\/usr\/bin\/awk/,/baba/{w 1' -e 'd}' WASfile;
#!/usr/bin/awk -f
BEGIN { FS="=" } NR==FNR { a[$1]=$0; next } $1 in a { $0=a[$1] } /^#/ { var=$1; sub(/^#/, "", var); if(var in a) { $0=a[var] } } 1
baba
read -p "Press [Enter] to continue for Installation"
seperti di bawah ini
#./WASfile
sed: -e expression #1, char 24: missing command
./WASfile: line 6: BEGIN: command not found
./WASfile: line 7: {: command not found
./WASfile: line 7: next: command not found
./WASfile: line 8: in: command not found
./WASfile: line 9: syntax error near unexpected token `/^#/,'
./WASfile: line 9: `/^#/ { var=$1; sub(/^#/, "", var); if(var in a) { $0=a[var] } } '
WASfile
tetapi dalam skrip yang sama Anda mengedit file dengan nama yang sama dua kali (WASfile
dan dengan path lengkap/home/wasadm/WASfile
). Apakah seharusnya file yang sama dan Anda benar-benar ingin membuat kode modifikasi diri? Atau apakah Anda hanya menggunakan nama yang sama untuk skrip dan file yang sedang diedit? --- Saya akan sangat mencegah Anda dari kode modifikasi diri. Anda akan membutuhkan lebih banyak pengetahuan untuk membuatnya berfungsi dengan benar.