Shell脚本文件dummy.sh与-rw-r - r--权限,使用以下命令运行正常 .
/usr/bin/sh dummy.sh
(要么)
/usr/bin/bash dummy.sh
但最终会出现 bash: ./dummy.sh: Permission denied 错误,直接执行如下 . 这背后的原因是什么?
./dummy.sh
您的脚本需要标记为系统的可执行文件 . 这是通过为所有者,组或世界其他地方设置"x"位来完成的 . 请参阅:Wikipedia - Unix permissions执行
chmod 755 dummy.sh
您将为脚本所有者设置读取,写入和执行权限,并为该组和世界其他地方读取和执行权限 .
使用以下任一选项为shell脚本提供“执行”权限:
chmod 744 dummy.sh
chmod u x dummy.sh
请参考chmod documentation
2 回答
您的脚本需要标记为系统的可执行文件 . 这是通过为所有者,组或世界其他地方设置"x"位来完成的 . 请参阅:Wikipedia - Unix permissions执行
您将为脚本所有者设置读取,写入和执行权限,并为该组和世界其他地方读取和执行权限 .
使用以下任一选项为shell脚本提供“执行”权限:
chmod 744 dummy.sh
chmod u x dummy.sh
请参考chmod documentation