一尘不染

Bash脚本-遍历find的输出

linux

我有一个bash脚本,在其中我需要遍历find命令的输出的每一行,但是看来我正在遍历find命令中的每个Word(以空格分隔)。到目前为止,我的脚本如下所示:

folders=`find -maxdepth 1 -type d`

for $i in $folders
do
    echo $i
done

我希望这会产生如下输出:

./dir1 and foo
./dir2 and bar
./dir3 and baz

但是我很想得到这样的输出:

./dir1
and
foo
./dir2
and
bar
./dir3
and
baz

我在这里做错了什么?


阅读 1824

收藏
2020-06-02

共1个答案

一尘不染

由于您没有使用的任何更高级的功能find,因此可以使用简单的模式来遍历子目录:

for i in ./*/; do
    echo "$i"
done
2020-06-02