《LINUX的bash如何給shell腳本傳參數》要點:
本文介紹了LINUX的bash如何給shell腳本傳參數,希望對您有用。如果有疑問,可以聯系我們。
相關主題:服務器配置
bash命令后邊可以跟任意的參數,具體要如何操作?
執行“vi test.sh”創建一個新的shell腳本。
腳本test.sh的內容如下:
#!/bin/sh name=$1 echo "the ${name} !"
給新建的test.sh的腳本賦可執行權限,命令為“chmod 755 test.sh”。執行可以看到結果.
如果想判斷參數為空則中止執行,可以
if [ "$1" = "" ]; then echo -e "請提供參數." exit 1 fi
或:
if [ $# == 0 ];then echo "沒有帶參數"; else echo "帶了$#個參數" fi
或:
if [ "$1" ];then echo "帶參數"; else echo "沒有帶參數 " fi
上面的代碼其實和使用if結構的-z參數是一樣的,都是用于檢測字符串是符不空值。因此也可以換成使用-z參數來判斷。示例代碼如下 :
if [ -z "$1" ];then echo "沒有帶參數"; else echo "帶參數" fi
詳解:
"name=$1"中$1為系統提供的位置參數,$0代表程序的名稱,[$1/$2/...]從1開始為傳遞的參數。
linux系統除了提供位置參數還提供內置參數,內置參數如下:
$# ----傳遞給程序的總的參數數目
$? ----上一個代碼或者shell程序在shell中退出的情況,如果正常退出則返回0,反之為非0值。
$* ----傳遞給程序的所有參數組成的字符串。
$n ----表示第幾個參數,$1 表示第一個參數,$2 表示第二個參數 ... $0 ----當前程序的名稱
$@----以"參數1" "參數2" ... 形式保存所有參數
$$ ----本程序的(進程ID號)PID
$! ----上一個命令的PID
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/175.html