如何在tcsh中执行当前目录子目录中的命令

时间:2013-12-26 07:48:17

标签: tcsh

我是shell编程和使用tcsh的新手,我想做以下几点。

我。找出当前目录中的子目录(假设只存在子目录,没有别的,所以'ls'就足够了)

II。逐个进入每个文件夹,在名为“abc”的文件夹中,运行文件command_file中的命令

以下是否有效。我也对语法感到困惑:

set sub_TBs = `ls | awk '{split($0,a,":")'`;

foreach i (a) {

cd ./a[i]/abc 
./command_file;}

请帮忙......

1 个答案:

答案 0 :(得分:0)

foreach dir (`find * -type d -maxdepth 0`)
    cd $dir/abc
    ./command_file
    cd ../..
end

当然,只有command_file可执行时才会这样。如果没有,则将该行替换为source command_file