Ex:{pwd} / home / vrm / 假设这个目录里面有100个目录。像dir2,dir2,dir3等......
我想去每个目录并执行一个命令(比如说psh make clean)。
我该怎么办?请指教。
答案 0 :(得分:0)
我通常使用以下内容遍历目录
find . -type d -print0 | while read -d $'\0' dname; do echo "DIR: ${dname}"; done
请务必双引号变量dname
,因为它可能包含空格。
答案 1 :(得分:0)
在sh中,您可以使用for
循环。请注意.[^.]*
捕获(大多数)“点”目录。
for i in .[^.]*/. */. ; do
(cd "$i"; pwd)
done
它会在名为“..foo”的目录上失败,或者其他什么。我想可以添加..?*
。我没试过。