Bash

無法將參數傳遞給函式

  • February 24, 2020

對於我的家庭作業,我需要在我的程式碼中有一個函式來獲得額外的功勞。我有一個腳本,它接受第二個參數並根據傳遞的內容創建一個文件夾。該程式碼適用於函式外部的參數。但是,當我將程式碼放入函式中時,我無法將參數傳遞給函式內部。

這是我的功能。我把它放在 .sh 文件的頂部。

create_folders() {
echo "$2"

if [[ ! -d "$2" ]]; then

   echo "Making $2 Base Folder."
   mkdir "$2"

   else echo "$2 directory had already been created."

fi
}

再往下看,我有

create_folders "$2"

我無法弄清楚為什麼它不會通過論點。

您正在傳遞一個參數,因此在函式中,它將是$1,而不是$2$2是第二個參數,如

create_folders first second

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