如何在shell脚本中运行可执行文件?

时间:2017-10-18 04:04:28

标签: bash shell

我有文件夹"目的地/"在目标文件夹中,它包含可执行的grade1。我当前的目录是"目的地/"

我试图运行

for i in FILES/*; do ./grade1 $i done

它一直说

./grade1 no such file or directory

奇怪的是,当我只是将代码复制到命令行并运行它时,它工作正常。只有当我在shell脚本中执行此操作时才会出现问题

2 个答案:

答案 0 :(得分:1)

我认为,1级真的不在你当前的工作目录中,正如你声称的那样。我建议你验证这一点也检查你的可执行文件的权限。将代码扩展到

echo current directory is $PWD
ls -l grade1
for i in FILES/*; do ./grade1 $i done

这应该揭示你问题的根源。

答案 1 :(得分:0)

解决此问题的一种简单方法可能是开始使用grade1可执行文件的完整路径

for i in FILES/*; do {FULL_PATH}/grade1 $i done