我似乎无法通过 shebang 将 bash 脚本转换为可执行文件。我的代码看起来像
#!/bin/bash
echo "hello"
它位于名为test.sh的文件中。我正在尝试让它使用命令运行
./test.sh
在命令行中,但我刚刚收到权限被拒绝的错误。当我将其更改为
sudo ./test.sh
我刚刚得到找不到命令。我可以通过命令行将文件转换为可执行文件:
chmod +x test.sh
代码正确输出
hello
我已经尝试过这些命令
which bash
它返回了目录/bin/bash,并且我还在.bashrc中导出了此路径,但无济于事。任何想法将不胜感激,谢谢!为了清楚起见,我运行 Linux Mint。
最佳答案
chmod +x test.sh
设置可执行位正是所需要的。脚本需要 shebang 行和可执行权限才能运行。否则,您必须使用 bash test.sh 等显式调用 shell。可执行位允许您编写./test.sh
。
关于linux - shebang 无法在 Linux 中运行 bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50702213/