-1
我正在寫一個腳本,可以採取2-4參數:慶典 - 在非尾可選參數的位置
arg1 arg2 arg3 arg4
arg2
和arg3
是強制性的,將被提供,但arg1
和arg4
是可選的。在三個參數的情況下,我如何檢查是否給出了arg4
?
如果參數的數量是四個,那麼這是顯而易見的;然而,與正好三個參數,我不知道它是arg1
或arg4
是不存在的,如下面的情況:
./script arg2 arg3 arg4
不能有多個可選參數配置這樣的。想想看。無法將'arg1 arg2 arg3'與'arg2 arg3 arg4'區分開來。你可以檢查用'$#'給出的參數數量。 – e0k
好吧,沒辦法*除非*有內容限制 - 例如,如果arg1總是一個數字,而arg2不能是數字,那麼可能......但是OP沒有提供足夠的信息給這裏做出這樣的區分,無論如何這是一種不必要的脆弱方法。 –