实现思路就是深度优先搜索的实现思路,不过第一次在Linux下写脚本,还需要适应。比如if语句的中括号两边一定要留空格之类的。
function dfs
{
local now_dir now_file
now_dir=$1
for now_file in $(ls ${now_dir})
do
if [ -f $now_file ]
then
echo $now_file
fi
done
for now_file in $(ls ${now_dir})
do
if [ -d $now_file ]
then
cd ${now_file}
dfs ${now_dir}/${now_file}
cd ..
fi
done
}
if [ -f $1 ]
then
echo "the input is a file"
else
dfs $1
fi