依次在各种文件夹中执行程序

时间:2013-05-10 15:56:06

标签: linux

我有两个名为onetwo的文件夹,放在/ home /中。每个文件夹中都有一个(相同的)可执行文件prog.x,在开始执行后需要1小时才能完成。我想首先执行/home/one/prog.x然后/home/two/prog.x(所以不要同时执行)。

我想制作一个为我这样做的脚本。有没有一种聪明的方法来实现这一目标?请注意prog.x的工作方式是加载数据文件,该文件位于同一文件夹中。

1 个答案:

答案 0 :(得分:3)

由于您的程序(不明智?)隐含依赖于其执行目录,您可能需要考虑使用子shell,并使用;来分隔顺序命令

bash样式的shell中,您可以执行以下操作:

(cd /home/one ; ./prog x) ; (cd /home/two ; ./prog.x)

如果您想制作更通用的解决方案,可以在列表上使用for循环:

for d in one two ; do cd /home/$d ; ./prog.x ; done