$0 -> 完整的指令碼路徑和名稱
$1 ->第乙個位置變數的字串
$2 ->第二個位置變數的字串
$* ->所有輸入引數的字串
$@ -> 同上
$# -> 輸入引數的個數
ngnlinux1 [** none **]/home/qius $ cat sh_test
#!/bin/bash
echo $0, $1,$2, $*, $@, $#
shift
fun()
#函式中仍然可以使用shell中的變數
if [ $1 == $ ]
then
echo ok
fi }echo $0, $1,$2, $*, $#
shang=sq
fun $ shang1 shang2 shang3
ngnlinux1 [** none **]/home/qius $ ~/sh_test shang1 shang2 shang3 shang4
/home/qius/sh_test, shang1,shang2, shang1 shang2 shang3 shang4, shang1 shang2 shang3 shang4, 4
/home/qius/sh_test, shang2,shang3, shang2 shang3 shang4, 3
/home/qius/sh_test, sq, shang1
sqok
shell指令碼中的變數
1 在命令列中和指令碼中,變數定義得格式 name value 左右兩邊不能有空格,否則會當做命令來對待,輸出乙個command not found echo name echo 列印出變數,引用變數使用 name.2 單引號和雙引號 語法 和php中相同 雙引號仍然可以保有變數的內容,但單引號內僅...
shell指令碼中的變數
變數就是記憶體一片區域的位址 命令無法操作一直變化的目標 用一串固定的字元來表示不固定的目標可以解決此問題 export宣告 env顯示所有環境變數 echo path export a 1 在環境關閉後變數失效 字元 數字 轉譯單個字元 弱引用,批量轉譯個數字元 不能轉譯 強引用 表示當前程序的i...
shell指令碼中的變數
後記面試中很重要 在系統中,當我們執行 bin ls時與ls命令結果並不相同,因為ls是已經經過加工過的命令。alias xie vim 臨時設定,開啟了新的shell就會失效 vim bashrc 只對當前使用者生效 alias xie vim source bashrc vim etc bash...