我想递归确定当前目录及其所有子目录中所有文件的大小。
这是我的脚本代码:
#!/bin/bash
files=`ls`
dir="."
echo "$dir"
funct ()
{
ls -lh $dir | head -1
for file in $files
do
echo $file
if [ -d "$file" ]
then
echo "$file is directory"
prevdir=$dir
dir+="/$file"
echo "$dir"
files=`ls $dir`
funct $files
dir=$prevdir
fi
done
}
funct $files
结果应为打印: ./ 总人数 ./备份 总人数 ./backup/newDir 总人数
,依此类推... 但它没有将“备份”和“ adir”目录中的目录视为目录。