我有一个简单的脚本,用于在客户权限下安装包,如下所示(出于安全考虑,命令已更改)installScript.sh
#!/bin/bash
patch -i <package-name> << EOF
n
EOF
此脚本的目的是为了在提示“您确定吗?(Y/n)”时自动输入 N(否),以进行测试。此文件的权限是
-rwxrwxrwx. 1 cust root 66 Jul 25 15:06 installScript.sh
但是,当我使用执行此命令时
./installScript.sh
or
sh /home/cust/installScript.sh
我被拒绝了权限。但是通过patch
手动执行命令,我可以正常运作,没有任何问题。有什么需要配置的吗?
答案1
这是权限问题,因为你的组是“root”。
你必须sudo ./installScript.sh
或者,您可以sudo chown cust:cust ./installScript.sh
并且不需要sudo
运行。
另外,你可以使用工具作为输入。
#!/bin/bash
patch -i <package-name> &&
xdotool keydown n