Command-Line

如何將命令行參數傳遞給 shell 腳本?

  • June 2, 2020

我知道 shell 腳本只是執行命令,就好像它們是在命令提示符下執行的一樣。我希望能夠像執行函式一樣執行 shell 腳本……也就是說,將輸入值或字元串帶入腳本。我該如何做呢?

shell 命令和該命令的任何參數顯示為帶編號的shell 變數:$0具有命令本身的字元串值,例如,script或其他。任何參數都顯示為、等。參數的數量在 shell 變數中。./script``/home/user/bin/script``"$1"``"$2"``"$3"``"$#"

處理此問題的常用方法涉及 shell 命令getoptsshift. getopts很像 Cgetopt()庫函式。shift移動$2to $1$3to等的值$2$#被遞減。程式碼最終會查看 的值,"$1"使用 a 執行操作來決定一個動作,然後執行 a以移動到下一個參數。它只需要檢查,也許。case``esac``shift``$1``$1``$#

引用自:https://unix.stackexchange.com/questions/31414