我找到了这个问题的答案......只是想为其他人提供一些信息,他们也遇到了这个问题......
在我的系统中,我遇到了这个问题,因为我使用sh main.sh
来处理我的shell脚本并忽略了" Bash"之间的区别。 " Shell"。
为了解决此问题,您可以尝试使用chmod +x
并使用./
来执行程序,将模式更改为可执行文件。
答案 0 :(得分:5)
错误:
Illegal option read -a
显示是因为您尝试在shell中运行它,而-a
read
选项未定义。
命令chmod +x script.sh
与它无关。它只是给出了脚本执行权限。
您试图通过命令sh script.sh
在Bourne shell中运行该命令,而Bourne shell read
没有-a
选项可供读取。它是Bash功能。
使用./
运行并不是一个完全的答案。你至少可以说:用path_to_the_script
运行它,因为不是每次你的脚本都会在当前目录中结束。
您可以使用bash main.sh
代替sh main.sh
运行它。