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