天天看點

shell學習三參數傳遞 原

參數傳入說明如下:

echo "Shell 傳遞參數執行個體"

echo "執行的檔案名:$0"

echo "第一個參數為:$1"

echo "第二個參數為:$2"

echo "傳遞到腳本的參數個數:$#"

echo $* #列印所有輸入參數與$@相同

echo $$ #腳本執行的程序号

echo $- #顯示shell目前選項     

$*與$@的差別在于

  • 相同點:都是引用所有參數。
  • 不同點:隻有在雙引号中展現出來。假設在腳本運作時寫了三個參數 1、2、3,,則 " * " 等價于 "1 2 3"(傳遞了一個參數),而 "@" 等價于 "1" "2" "3"(傳遞了三個參數)。
  • #!/bin/bash # author:菜鳥教程 # url:www.runoob.com echo "-- \$* 示範 ---" for i in "$*"; do echo $i done echo "-- \$@ 示範 ---" for i in "$@"; do echo $i done
  • $ chmod +x test.sh $ ./test.sh 1 2 3 -- $* 示範 --- 1 2 3 -- $@ 示範 --- 1 2 3