我是一个使用脚本的初学者,我试图创建一个简单的脚本来运行一个名为“main”的可执行文件,其中有几个位于子目录中的文件作为输入,为每个输入生成一个输出文件。当我尝试这个程序时:
exec=./main ;
for d in ./subdir/subdir2/*/ ; do
(cd "$d" && for f in *.xml ; do (echo "$f" && ("$exec" < "$f" > "${f%.*}_output.csv")); done ); done
但它给了我:
./script_parser.txt: line 11: ./main: No such file or directory
我尝试过只放exec = / main和exec = main但没有成功。使用echo代码,我看到我的子目录中的所有输入文件都被找到了。
那么我怎样才能将原始目录存储在main主目录中并使用这些文件运行呢?请注意,我不想放置绝对路径(如〜/ User / etc ..),因为我希望此脚本也可以在其他机器上运行。
如果它改变了什么,我正在使用MacBook。