此命令将计算子目录中的文件数。
find . -maxdepth 1 -type d |while read dir;do echo "$dir";find "$dir" -type f|wc -l;done
看起来像
./lib64
327
./bin
118
是否可以让它看起来像
327 ./lib64
118 ./bin
代替?
答案 0 :(得分:4)
有很多方法可以做到这一点......这里的内容不会改变你的代码。 (为了便于阅读,我将它放在多行中。)
find . -maxdepth 1 -type d | while read dir; do
echo `find "$dir" -type f | wc -l` "$dir"
done
答案 1 :(得分:1)
管道进入tr
以删除或替换换行符。我希望您希望将换行符转换为制表符,如下所示:
find . -maxdepth 1 -type d |while read dir;do
find "$dir" -type f|wc -l | tr '\n' '\t';
echo "$dir";
done
(编辑:我的方法错了)
答案 2 :(得分:0)
do echo -n "$dir "
-n
阻止echo
之后结束该行。