最近需要脚本统计每个目录中有多少文件,并按照一定格式显示出来。
使用printf可以格式化输出。 详细用法
#!/bin/sh
taget_dir="/Users/yaoyan/shell"
for dir in $(find ${taget_dir} -type d)
do
dir_name=$(echo "${dir}" | awk -F '/' '{print $5}')
file_num=$(find ${dir} -type f | wc -l)
#echo "${dir_name}:${file_num}"
printf "%-25s:%6s\n" ${dir_name} ${file_num}
done
%-25s :宽度25字符,左对齐
%6s: 宽度6字符,右对齐