我編寫了這個腳本,用一個命令編譯和運行我的C和java程序。爲什麼Shell腳本運行時懸掛'}'?
1 run(){
2 gcc -lm $1 && (shift; ./a.out $*)
3 }
4
5 jrun(){
6 clas=`echo $1 | cut -d'.' -f1 `
7 javac $1 && { shift; java $clas $* }
8 }
但是在運行中出現錯誤。
# source t.sh
-bash: t.sh: line 9: syntax error: unexpected end of file
當我在最後添加'}'
時腳本成功運行。
剛纔意識到我用{}
而不是()
在line 7
。
我的問題是爲什麼它運行並與一個danging '}'
罰款工作?
什麼都不是懸掛。最後一個'}'完成'jrun {}'。 – VM17
請勿使用行號郵寄代碼。 – tripleee
用行號碼發帖,因爲錯誤表示行號。 – Yogesh