1. 程式人生 > >Linux下$#,$0,$1,$2,$3,[email protected],$*,$$,$?代表的含義

Linux下$#,$0,$1,$2,$3,[email protected],$*,$$,$?代表的含義

  • $# :傳給指令碼的引數個數;
  • $0 :指令碼名稱;
  • $n :n為數字,代表傳給指令碼的第n個引數;
  • [email protected] :引數列表;
  • $* :也是顯示引數列表,與上一條命令不同的是,當在雙引號裡面時,”$*”表示一個引數,即”a b c”,而”$@”表示三個引數,即”a” “b” “c”;
  • $$ :執行當前指令碼的程序ID;
  • $? :最後一條命令的退出狀態,0表示執行成功,非0表示執行失敗.

示例: 建立一個指令碼test.sh

echo "number:$#"
echo "scname:$0"
echo "first :$1"
echo "second:$2"
echo
"third :$3" echo "fourth:$4" echo "argume:[email protected]" echo "show parm list:$*" echo "show process id:$$" echo "show precomm stat: $?"

執行指令碼,傳入引數a b c:

這裡寫圖片描述