遞歸統計linux文件和目錄總數
- #!/bin/bash
- dir=$1
- readsub () {
- if [ -f $1 -o "$(ls $1)" = "" ];then
- ((n++)) # 遞歸出口
- else
- ((n++))
- for file in $(ls $1)
- do
- readsub $1/$file # 開始自身調用
- done
- fi
- }
- readsub $dir
- echo "########### $n ###########"
當然還可以處理文件等。
- #!/bin/bash
- dir=$1
- readsub () {
- if [ -f $1 -o "$(ls $1)" = "" ];then
- ((n++)) # 遞歸出口
- else
- ((n++))
- for file in $(ls $1)
- do
- readsub $1/$file # 開始自身調用
- done
- fi
- }
- readsub $dir
- echo "########### $n ###########"