我有shell命令./cherrypicker.sh input.txt
,它可以在终端中正常工作。
但我想在此命令之前和之后执行更多命令,如
echo "some text" > input.txt
./cherrypicker.sh input.txt
result < input.txt.response
rm input.*
所以我将所有这些放在另一个shell文件alls.sh
中,并试图像这样执行它
./ alls.sh
说
bash: ./test.sh: Permission denied
然后
sudo ./alls.sh
给出了
sudo: ./test.sh: command not found
正确的方法是什么?
答案 0 :(得分:2)
为脚本添加执行权限:
chmod +x test.sh
第二个问题与路径有关。 cd
到目录或使用完整路径(使用更适合任务的那个)。
答案 1 :(得分:2)
您可能希望通过执行
确保test.sh
实际上是可执行的
chmod 0700 /path/to/test.sh
然后在没有sudo的情况下运行它。
关于sudo的说明:将所有问题都排除在外是不可能的。 ;)认为这是一个准时和优雅地表达你的观点的陪衬。 ;)