2013-01-21 60 views
0

我有一個灰腳本,我需要檢查用戶是否輸入了任何愚蠢的東西。正確的使用方法是:如何檢查灰腳本中的額外參數?

script <read | monitor> -s <system | event> [-f filter] [-n number] 

,我需要檢測,如果用戶有例如誘發它想:

script read -s system dummydummy 

爲了解析適當的參數,我用

while getopts "s:f:n:" Option 
do 
    case $Option in 
    s)logname=${OPTARG};; 
    f)filterspec=${OPTARG};; 
    n)numlines=${OPTARG};; 
    *)exit $E_OPTERROR;; # DEFAULT 
    esac 
    OPRIND=${OPTIND} 
done 

我如何檢測是否有任何剩餘未解析的參數?

回答

1

您可以退出 -loop後使用:

shift $(($OPTIND - 1)) 
echo "Remaining arguments: [email protected]" 

它工作在慶典般的炮彈,讓我們知道,如果它在灰也可以。