選項(xiàng)處理(一)使用 case 語(yǔ)句處理命令行選項(xiàng)

當(dāng)我們編寫的 Shell 腳本只接收一個(gè)命令行選項(xiàng)時(shí),使用 case 語(yǔ)句對(duì)其進(jìn)行處理是比較方便的。
下面是一個(gè)簡(jiǎn)單的使用示例:

#! /bin/bash

# 將第一個(gè)命令行參數(shù)賦值給變量 opt
opt=$1
# 將第二個(gè)命令行參數(shù)賦值給變量 filename
filename=$2

# 定義函數(shù) checkfile
checkfile() {
        # 如果沒(méi)有指定文件名,則顯示缺少文件名,并退出腳本的運(yùn)行
        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)用上述腳本的運(yùn)行效果:

顯示效果

本文參考自 《Linux Shell命令行及腳本編程實(shí)例詳解

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容