Bash

如何創建一個將參數傳遞給另一個 bash 腳本的函式?

  • October 1, 2021

我想在 bash 中創建一個函式,它使用傳遞給第一個函式的相同參數執行另一個腳本。

這是我到目前為止嘗試過的(我遇到了語法錯誤):

.bashrc

my-fn {
   /home/user/myScript "$@"
}

自定義腳本

#!/bin/bash

another-defined-fn "$@"

當我嘗試獲取我的來源時出現以下錯誤.bashrc

-bash: /home/userx/.bashrc: line 206: syntax error near unexpected token `}'
-bash: /home/userx/.bashrc: line 206: `}'

實現此目的的正確語法是什麼?

額外的

如何在函式中包含sudo呼叫?

就像是:

my-fn {
   sudo /home/user/myScript "$@"
}

您已經獲得了參數的正確語法,但函式定義卻沒有。您需要像這樣定義函式:

myfun() {
  ...
}

或這個:

function myfun {
  ...
}

並且還使用所有參數(或參數列表)呼叫函式。

從一個文件:

myfun "$@"

或者

myfun one two three...

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