通常用du来实现好像速度更快一些
[code:1]
#!/bin/bash
# filename: void_dirs_du.sh
# author: skypp
# description: list void directories of specified directory and its sub directories
# usage: sh ./void_dirs_du.sh [DIRECTORY]
dirs=($(du $1 | grep 0 | awk '{print $2}'))
[[ $(ls ${dirs[0]}) == '' ]] && echo ${dirs[0]}
for((i=1;i<${#dirs[@]};i++))
do
[[ ${dirs[$i-1]} != ${dirs[$i]}* ]] && [[ $(ls ${dirs[$i]}) == '' ]] && echo ${dirs[$i]}
done
[/code:1]
突然感觉用awk一行就可以实现,请哪位赐教,小弟谢过
