นี่คือไฟล์จริงของฉัน 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"
ตอนนี้ฉันต้องการวางสคริปต์ต่อไปนี้ที่Script เพื่อเพิ่มด้านบนแล้วเรียกใช้งาน 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
ฉันต้องการรวมและใช้ดังต่อไปนี้หรือเป็นวิธีที่ดีกว่าในการรวมสคริปต์ทั้งสอง
#!/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"
ฉันไม่สามารถเรียกใช้งานสคริปต์ได้
ดังนั้นฉันพยายามแยกAWKscriptไปยังไฟล์อื่นและพยายามเรียกใช้ AWKscript นั้น แต่ปัญหาคือหลังจากแตกไฟล์ WASfile ของสคริปต์หลักจะแตกหรือล้มเหลว
#!/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"
ดังต่อไปนี้
#./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
แต่ในสคริปต์เดียวกันคุณกำลังแก้ไขไฟล์ที่ชื่อเดียวกันสองครั้ง (WASfile
และด้วยพา ธ เต็ม/home/wasadm/WASfile
) มันควรจะเป็นไฟล์เดียวกันและคุณต้องการสร้างรหัสการแก้ไขด้วยตนเองหรือไม่? หรือคุณใช้ชื่อเดียวกันกับสคริปต์และไฟล์ที่กำลังแก้ไขโดยไม่ใช้ประโยชน์ --- ฉันขอกีดกันคุณอย่างมากจากรหัสการแก้ไขตัวเอง คุณจะต้องมีความรู้มากขึ้นเพื่อให้มันทำงานได้อย่างถูกต้อง