考虑这个目录结构
/dir1/Quack.sh
/dir2/
< - 我们在这里
是否可以执行Quack.sh
,就好像我当前在/dir1/
但实际上没有cd
那样?
我问的主要原因是因为 Bundle 在运行从文件夹外部运行可执行文件时依赖它的可执行文件时抱怨。如果从包含在其中的目录执行,则可执行文件可以正常运行。
答案 0 :(得分:3)
您可以创建子shell并执行cd,脚本执行:
(cd ../dir1/; ./Quack.sh)
或者使用find -execdir
find ../dir2/ -maxdepth1 -name "Quack.sh" -execdir '{}' \;