#!/bin/sh
listdir(){
for file in "$1"/*
do
if [ -d "$file" ] then listdir "$file"
elif [ -f "$file" ] then ls -l "$file" fi
done
}
listdir "$1"
|
过程中出现错误,原因有二:
1,如果$file和$1不加上引号,则在处理有空格的文件和目录时,会出现错误。
2,如果用if/else而不用if/elif,当遇到空目录时,会出现“没有此文件或文件夹”的错误。原因在于$1/*没有可展开的文件,则会把“*”当初文件名,如出现诸如 ls -l /tmp/path/*
阅读(1096) | 评论(0) | 转发(0) |