2016-05-30 51 views
0

我在UNIX腳本中有一個函數,我們需要傳遞4個參數。如果我傳遞所有參數,UNIX腳本執行成功,但如果傳遞第一個參數和第三個參數,UNIX腳本將第三個參數作爲第二個參數,腳本失敗。請讓我知道如何解決這個問題。Unix參數流程

在此先感謝。

+0

只需添加一個空的第二個空參數,如下所示:'$ ./script.sh param1''param3' – ritesht93

回答

1

只需添加到曾這樣評價什麼僅限Ritesh:如果你在你的腳本中調用函數傳遞參數: -

function_name param1 '' param3 '' 

你仍然可以訪問位置參數(函數參數)$ 2和$ 4函數內但它們將是NULL。

+0

感謝您的回覆。這非常有用。對於例如:如果任何用戶想要使用這個功能,但他們不知道這個,那麼這將是一個問題。在函數中我們可以編寫任何代碼來理解從腳本傳遞的第二個參數或第四個參數的功能。 –

+0

如果我已經正確理解你的問題,函數內部的一個簡單的'if循環'檢查一個特定的參數是否爲空應該達到目的。 – whirlcano

+0

假設他們給出了像函數pram1 parm4那樣的命令,那麼它是如何基於if循環來工作的。提前致謝。 –