脚本要求
使用递归函数历遍PATH环境变量下的所有目录以及可执行文件
方法一
脚本内容
#!/bin/bash
###########添加分隔符#######################
IFS=$IFS':'
############递归函数#########################
list () {
for F in $1/*
do
if [ -d $F ]
then
echo "$2目录:$F"
list "$F" " $2"
elif [ -x $F ]
then
echo "$2可执行文件:$F"
fi
done
}
##############主体命令########################
for f in $PATH
do
echo "目录:$f"
list "$f" " "
done
执行效果
方法二
脚本内容
#!/bin/bash
IFS=$IFS':'
list () {
for F in `ls $1`
do
if [ -d $1/$F ]
then
echo "$2目录:$F"
list "$1/$F" " $2"
elif [ -x $1/$F ]
then
echo "$2可执行文件:$F"
fi
done
}
for f in $PATH
do
echo "目录:$f"
list "$f" " "
done