在这里找不到错误.当我运行这个程序时,BASH出现了"[:17:意外的运算符"我用一个以.c结尾的参数和一个.java中的一个尝试了它但似乎都不起作用.
EXT=`echo $1 | cut -f2 -d"."`
if [ "$EXT" == "c" ]; then
NAME=`echo $1 | cut -f1 -d"."`
gcc -Wall -o "$NAME" "$1"
elif [ "$EXT" == "java" ]; then
NAME=`echo $1 | cut -f1 -d"."`
gcj -c -g -O $1 && gcj --main="$NAME" -o "$NAME" "${NAME}.o"
else
echo "hm... I don't seem to know what to do with that"
fi
Run Code Online (Sandbox Code Playgroud)
test(又名[)没有==经营者.=相反,字符串相等.是的,这有点奇怪.
此外,case对此很好:
case "$1" in
*.java)
# java stuff here
;;
*.c)
# c stuff here
;;
*)
# otherwise...
esac
Run Code Online (Sandbox Code Playgroud)