當(dāng)我們編寫的 Shell 腳本只接收一個命令行選項時掸驱,使用 case 語句對其進(jìn)行處理是比較方便的荸百。
下面是一個簡單的使用示例:
#! /bin/bash
# 將第一個命令行參數(shù)賦值給變量 opt
opt=$1
# 將第二個命令行參數(shù)賦值給變量 filename
filename=$2
# 定義函數(shù) checkfile
checkfile() {
# 如果沒有指定文件名税迷,則顯示缺少文件名看杭,并退出腳本的運行
if [ -z $filename ]
then
echo "File name missing"
exit 1
elif [ ! -f $filename ]
then
echo "The file $filename doesn't exist!"
exit 2
fi
}
case $opt in
-e|-E)
checkfile
echo "Editing $filename file..."
;;
-p|-P)
checkfile
echo "Displaying $filename file..."
;;
*)
echo "Bad argument!"
echo "Usage: `basename $0` -e|-p filename"
echo " -e filename : Edit file."
echo " -f filename : Display file."
;;
esac
調(diào)用上述腳本的運行效果:
本文參考自 《Linux Shell命令行及腳本編程實例詳解 》