2021-06-18 09:45:00
1.$符號基本用法:
通常情況下,在工作中用的最多的有如下幾項:
$0:Shell 的命令本身
$1 到 $9:表示 Shell 的第幾個參數
$? :顯示最后命令的執行情況
$#:傳遞到腳本的參數個數
$$:腳本運行的當前進程 ID 號
$*:以一個單字符串顯示所有向腳本傳遞的參數
$!:后台運行的最后一個進程的 ID 號
$-:顯示 Shell 使用的當前選項
2.引用變量:-------------${}-------------------
語法:$x或${x}
echo $x
echo "x = $x" out:x = 1024
echo "x = ${x}xy" out:x = 102xy #使用 ${ } 作為單詞邊界
3.${#str}獲取字符str長度
語法:${#str}
echo "str.length = ${#str}" #str="hello world"
4.執行shell命令----------$()-------------------
語法:$(command) 需要用在shell語句中間,無法單獨使用
echo $(date)
echo $(ping www.baidu.com -c 2) #字符串沒有換行
echo $(ls) #字符串沒有換行
5.表達式求值------------$[]-------------------
語法:$[a+b] 需要用在shell語句中間,無法單獨使用
$[a+b] 不能在命令行單獨輸出,要用在其它語句中間,而expr計算表達值可以單獨輸出
echo $[a+b]
expr $a + $b
6.整數運算、邏輯判斷------------$(())-------------------
語法:$((a+b*c)) if ((a > b)) 支持C語言運算符和表達式
echo $((a+b*c))
if (( a < b )); then echo "abcd" ; fi
7.調用shell腳步文件輸入參數:
語法:$1 $2 $3
echo 'echo $1 $2 $3' > ping.sh
echo $1 $2 $3
cmd:sh ping.sh 1 2 3