您好,登錄后才能下訂單哦!
目的:自我整理,自我回顧,自我反省!
內(nèi)容:干貨!干貨?。「韶洠。。?/p>
附加:不足之處希望大家指正,能給像我一樣的菜鳥一點啟發(fā)就最好啦。僅僅是啟發(fā)。。。
感謝:感謝老男孩(老看您的博文和視頻,O(∩_∩)O哈哈~),當(dāng)然還有網(wǎng)上的各路技術(shù)大牛,參考書籍《UNIX shell》
Bash shell 腳本結(jié)構(gòu)
#/bin/sh | shbang行,腳本解釋器。 如:#/bin/csh,#/bin/awk...等 |
# | 注釋。 如:This doc is writed chbo. |
shell元字符或通配符 | *,'',"",?,[],|,>,>>等 如:rm ./* |
顯示輸出 | echo "Hello,Chbo." |
局部變量 | var=value var='value' var="value1 value2" ---命令結(jié)果賦值給變量--- var=`cmd` var=$(cmd) |
環(huán)境變量 | ---臨時生效--- export var=value var=value ;export var ---永久生效--- 寫入:/root/.bash_profile /root/.bashrc 常寫入:/etc/profile 腳本目錄:/etc/profile.d |
查看變量 | echo $var_name echo $PATH |
特殊變量 | $0 :打印自身 $n :${10} $? :echo $? 判斷命令執(zhí)行結(jié)果 $# :傳參個數(shù) 如: [root@chboa 02]# cat 4.sh [ $# -ne 2 ] && { echo "must two" exit 1 } echo haha |
傳參 | ---交互式--- [root@chbo ]# read -t 5 -p "pls input:" a pls input:33 [root@chbo ]# echo $a 33 ---非交互式--- var1=$1 var2=$2 |
算術(shù)運算 | 1、((n=1+2)) 2、n=`expr 5 + 9` 3、let n=1+2 4、n=`echo 3+3|bc` 5、n=$[2+3] |
條件測試 | 方式一:test 方式二:[] 方式三:[[]] ---數(shù)值比較-------------------------------- -eq -ge -gt -le -lt -ne 如:[$1 -eq $2] ---字符串比較------------------------------ = != -n str1 檢查str1的長度是否非0 -z str1 檢查str1的長度是否為0 如: [ "$str1" = "$str2" ] [ -n "$str1" ]--->檢查一個變量是否含有數(shù)據(jù) 注意: 1、加 “ ” 2、=兩邊必須有空格 ---文件比較-------------------------------- -e -d -f -r -w -x(excute) -s(size) -nt (new than) -O 檢查文件是否存在并屬于當(dāng)前用戶所有 -G 檢查文件是否存在默認(rèn)組與當(dāng)前用戶相同 例如: [ -s $file ] 檢查文件是否存在并非空 [ $file1 -nt $file2 ] 檢查file1比file2新 |
條件語句 | if [ -f $file ] then echo 0 else echo 1 fi <===> [ -f $file ]&&echo 0||echo 1 ------------------------------------------- if [ ] then statements elif then statements elif then statements else statements if ------------------------------------------- case var_name in pattern1) statements ;; pattern2) statements ;; pattern3) statements ;; *) default value ;; esac |
循環(huán)語句 | for n in `seq 10` do echo 10.0.0.$n done --------------------------- while [ ] do commands done ---------------------------- until [ ] do commands done |
函數(shù) | function name(){ 指令 return n } 執(zhí)行:
|
腳本的執(zhí)行 |
|
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。