想做:"for x in `ls`; do cd $x ; get.exp $x ; cd .. ; done"但在我的期望脚本中



基本上就像标题所说的。。。

我想将当前运行脚本的目录,对于该目录中的每个文件夹,cd放入该目录中,并使用文件夹名称作为参数执行脚本。

例如:在${HOME}中,我有两个目录,比如"31"one_answers"32"(总是这样的数字和增量)

所以,在我的脚本中,我将使用cd in 31,从另一台机器cd..将一些文件rsync到该目录中。。,然后cd到32并重复,直到没有更多的文件夹。

我已经用我当前的get.exp运行了所有的东西:

for x in ls; do cd $x ; get.exp $x ; cd .. ; done

作为bash别名。但我很想去掉这个别名。。。

循环的tcl等价物是

foreach x [glob -nocomplain *] {
    cd $x
    exec get.exp $x
    cd ..
}

您可能可以简化它(也许只是使用source get.exp或调用适当的proc),但这是相同的基本思想。

最新更新