我想创建一个命令,以显示作为参数给出的目录中的所有目录。例如,如果我们的文件层次结构是这样的:
dir1:
dir2
dir3
file1
dir4:
file2
dir5
然后rep dir1
的结果应显示为:
dir2
dir3
dir4
而rep dir1/dir4
应显示:
dir5
此刻,我有一个shell脚本rep.sh
正在执行以下操作:
function rep(){
all=`ls $1`
for each in $all
do
if [ -d $each ]
then
echo $each
fi
done
}
通过bash rep.sh
执行此脚本不会执行任何操作,我认为这是正确的,但是当我执行rep dir1
或rep dir1/dir4
时,它不会显示任何内容。我认为我的错误在于我没有正确使用函数环境,或者我没有正确传递参数。