【发布时间】:2009-11-30 00:31:43
【问题描述】:
我编写了以下代码,如果没有 -l 或 -L 选项传递给脚本,我需要假设(检测)文件名是否作为参数传递。仅当文件名是一个小写字符时,以下第三个条件才匹配。如何灵活匹配大小写字母或可变长度的字符串?
while [ $# -gt 0 ]
do
case $1 in
-l) echo ls;;
-L) echo ls -l;;
[a-z]) echo filename;;
*) echo usage
exit 1;;
esac
shift
done
另外,我怎样才能在那个 case 语句中包含一个对空 $1 做出反应的条件? 例如,如果在没有任何选项或文件名的情况下调用脚本。
【问题讨论】: