Shell 指令碼學習筆記五 Shell傳遞引數

2022-08-30 10:06:10 字數 805 閱讀 2733

我們可以在執行 shell 指令碼時,向指令碼傳遞引數,指令碼內獲取引數的格式為:$n。n 代表乙個數字,1 為執行指令碼的第乙個引數,2 為執行指令碼的第二個引數,以此類推……

#!/bin/bash

echo

"shell 傳遞引數例項!";

echo

"執行的檔名:$0";

echo

"第乙個引數為:$1";

echo

"第二個引數為:$2";

echo

"第三個引數為:$3

";

為指令碼設定可執行許可權,並執行指令碼,輸出結果如下所示:

$ chmod +x test.sh

$ ./test.sh12

3shell 傳遞引數例項!

執行的檔名:./test.sh

第乙個引數為:

1第二個引數為:

2第三個引數為:

3

引數處理:

$#  傳遞指令碼的引數個數

$*  以乙個單字串顯示所有向指令碼傳遞的引數(如"$*"用「"」括起來的情況、以"$1 $2 … $n"的形式輸出所有引數)

$$  指令碼執行的當前程序id號

$!  後台執行的最後乙個程序的id號

$@  與$*相同,但是使用時加引號,並在引號中返回每個引數(如"$@"用「"」括起來的情況、以"$1" "$2" … "$n" 的形式輸出所有引數)

$-  顯示shell使用的當前選項,與set命令功能相同

$?  顯示最後命令的退出狀態。0表示沒有錯誤,其他任何值表明有錯誤

Shell指令碼學習筆記 五 函式

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

shell指令碼學習(五)

1 統計檔案的行數 單詞數 字元數 1 行數 wc l file cat file wc l 2 單詞數 wc w file cat file wc w 3 統計字元數 wc c file cat file wc c 4 不跟任何引數時,三者都列印,列印順序為行數 單詞數 字元數 wc file h...

shell指令碼學習筆記

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