shell中$0,$?,$!等的特殊用法
凡不庸變數說明:
$$shell本身的pid(processid)
$!shell最後執行的後台process的pid
$?最後執行的命令的結束**(返回值)
$-使用set命令設定的flag一覽
$*所有引數列表。如"$*"用「"」括起來的情況、以"$1 $2 … $n"的形式輸出所有引數。
$@所有引數列表。如"$@"用「"」括起來的情況、以"$1" "$2" … "$n" 的形式輸出所有引數。
$#新增到shell的引數個數
$0shell本身的檔名
$1~$n
新增到shell的各引數值。$1是第1引數、$2是第2引數…。
我們先寫乙個簡單的指令碼,執行以後再解釋各個變數的意義
# touch variable
# vi variable
指令碼內容如下:
#!/bin/sh
echo "number:$#"
echo "scname:$0"
echo "first :$1"
echo "second:$2"
echo "argume:$@"
儲存退出
賦予指令碼執行許可權
# chmod +x variable
執行指令碼
# ./variable aa bb
number:2
scname:./variable
first: aa
second:bb
argume:aa bb
通過顯示結果可以看到:
$# 是傳給指令碼的引數個數
$0 是指令碼本身的名字
$1是傳遞給該shell指令碼的第乙個引數
$2是傳遞給該shell指令碼的第二個引數
$@ 是傳給指令碼的所有引數的列表
shell中 0, , 等的特殊用法
變數說明 shell本身的pid processid shell最後執行的後台process的pid 最後執行的命令的結束 返回值 使用set命令設定的flag一覽 所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出所有引數。所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出...
shell中 0, , 等的特殊用法
感謝原作者的分享!變數說明 shell本身的pid processid shell最後執行的後台process的pid 最後執行的命令的結束 返回值 這個很常用 使用set命令設定的flag一覽 所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出所有引數。所有引數列表。如 用 括起來的情...
shell中 0, , 等的特殊用法
變數說明 shell本身的pid processid shell最後執行的後台process的pid 最後執行的命令的結束 返回值 使用set命令設定的flag一覽 所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出所有引數。所有引數列表。如 用 括起來的情況 以 1 2 n 的形式輸出...