假设我在一个目录中,该目录有一些子目录dir1
、dir2
、 和dir3
。这些目录中的每一个都有一个文件foo
,我想对每个foo
目录中的每个目录执行相同的命令,并从该目录中执行该命令。
如果我要“手动”完成它,它看起来像这样:
cd dir1
(execute on foo)
cd ../dir2
(execute on foo)
cd ../dir3
(execute on foo)
Run Code Online (Sandbox Code Playgroud)
必须从每个目录执行命令。 foo
是一个批处理调度脚本(对于 HTCondor,如果您想知道)并且必须从每个子目录执行,以便调度脚本启动的运行的输出将在每个子目录中结束。
据我所知,问题“在文件目录中查找文件并执行命令”并不能回答我的问题。该问题的第一个答案更多是一种在我的情况下不起作用的解决方法,而第二个答案没有足够的解释让我知道如何使用它。
roa*_*ima 30
假设您find
支持它,请使用该-execdir
选项而不是-exec
find * -name 'foo' -execdir pwd \;
Run Code Online (Sandbox Code Playgroud)
如果没有,请提供您的平台和/或发行版的详细信息(视情况而定)。