Shell指令碼統計指定目錄下子目錄中的檔案個數
阿新 • • 發佈:2019-01-08
#!/bin/bash
function usage(){
echo ""
echo "introduction: count of files subdir of source dir to save file.txt with [[subdir] [number of files]"
echo "subdir_files_count: usage: bash subdir_files_count -s [source dir] -o [output file ]"
exit 1
}
while getopts "s:o:" arg #選項後面的冒號表示該選項需要引數
do
case $arg in
s)
source="$OPTARG" #引數存在$OPTARG中
;;
o)
output="$OPTARG"
;;
?) #當有不認識的選項的時候arg為?
echo "unkonw argument"
usage
;;
esac
done
if [ -z $source ]
then
usage
fi
if test ! -d $source
then
echo "$source not exists!"
exit 1
fi
dir_list=`ls $source | sort`
for sub_dir in $dir_list
do
if test -d "$source/$sub_dir"
then
fcout=`ls $source/$sub_dir | wc -l`
echo "$sub_dir $fcout" >> $output
fi
done
function usage(){
echo ""
echo "introduction: count of files subdir of source dir to save file.txt with [[subdir] [number of files]"
echo "subdir_files_count: usage: bash subdir_files_count -s [source dir] -o [output file ]"
exit 1
}
while getopts "s:o:" arg #選項後面的冒號表示該選項需要引數
do
case $arg in
s)
source="$OPTARG" #引數存在$OPTARG中
;;
o)
output="$OPTARG"
;;
?) #當有不認識的選項的時候arg為?
echo "unkonw argument"
usage
;;
esac
done
if [ -z $source ]
then
usage
fi
if test ! -d $source
then
echo "$source not exists!"
exit 1
fi
dir_list=`ls $source | sort`
for sub_dir in $dir_list
do
if test -d "$source/$sub_dir"
then
fcout=`ls $source/$sub_dir | wc -l`
echo "$sub_dir $fcout" >> $output
fi
done