Shell指令碼學習筆記 函式

2021-08-20 14:16:49 字數 854 閱讀 1688

和c語言類似,shell中也有函式的概念,但是函式定義中沒有返回值和引數列表

在定義myfunc( )函式時並不執行函式體中的命令,就像定義變數一樣,只是給myfunc這個名字乙個定義,到後面呼叫myfunc函式時,才執行函式體中的命令。

注意:shell中的函式呼叫不寫括號。

shell中的函式必須先定義後呼叫,一般把函式定義都寫在指令碼的前面,把函式呼叫和其它命令寫在指令碼的最後。

shell函式沒有引數列表並不表示不能傳引數,事實上,函式就像是迷你指令碼,呼叫函式時可以傳任意多個引數,在函式內同樣是用$1,$2 等變數來提取引數。

實驗表明,$0 並不會作為函式引數,始終為指令碼執行名。

函式呼叫或者返回時,將shell函式當成命令。只要是命令,那麼函式呼叫成功與否,可以通過 $? 來判定。一般函式中可以用return命令返回,如果return後面跟乙個數字,則該數字表示函式的退出碼。

Shell 指令碼學習筆記九 Shell函式

函式的定義格式 function funname 1 可以帶function fun 定義,也可以直接fun 定義,不帶任何引數 2 引數返回,可以顯示加 return 返回,如果不加,將以最後一條命令執行結果,作為返回值。return後跟數值n 1 沒有 return 語句的函式 demofun ...

Shell指令碼學習筆記 五 函式

函式 bash呼叫函式不會開啟新的子shell,會在現有的shell環境中執行該函式。函式的語法形式 呼叫 函式名 引數1 引數2 funcname變數,值的內容是函式名 取消函式定義 unset f 函式名 return指令 傳回值 作用範圍 函式僅在定義的shell環境中有效,如果要傳遞函式給子...

shell指令碼學習筆記

學習筆記 1,檔案名字命名為 sh,字尾sh表明這是乙個bash指令碼檔案 2,shell指令碼的第一行如下 bin sh bin sh告訴系統其後路徑所指定的程式即是解釋此指令碼檔案的shell程式 3,寫完指令碼後儲存檔案,然後將檔案變成可執行檔案 chmod x test.sh 4,以下是乙個...