在bash中计算目录和文件

时间:2019-05-05 17:27:11

标签: bash loops

简单计数目录和文件不起作用。我正在通过-f和-d标志检查每个文件。

哪里有问题?

LOCATION=$1



for FILE in $(ls $LOCATION | egrep '^.{0,3}$'); 
do 
    echo "$FILE"
if [ -f $FILE ] 
then
    echo "its a file"
fi

if [ -d $FILE ] 
then
    echo "its a  dir"
fi

done

1 个答案:

答案 0 :(得分:1)

shopt -s dotglob # count hidden files

for file in "$LOCATION/"*; do
    [[ -f $file ]] && ((f++))
    [[ -d $file ]] && ((d++))
done

echo "${d:-0} dirs"
echo "${f:-0} files"

不涉及外部实用程序

相关问题