一、什么是shell腳本
????Shell腳本與Windows/Dos下的批處理相似,也就是用各類命令預先放入到一個文件中,方便一次性執(zhí)行的一個程序文件,主要是方便管理員進行設置或者管理用的。但是它比Windows下的批處理更強大,比用其他編程程序編輯的程序效率更高,它使用了Linux/Unix下的命令.
二、Shell腳本的規(guī)則
Shell 和python都是弱語言
? ??1?、變量的規(guī)則
? ? ? ? ? ?變量名=值? ? ? ??
? ? ?2?、shell定義變量的規(guī)則:
????????1: 等號兩邊不能有空格?
? ? ? ? 2:定義特殊的變量需要用單引號或者雙引號結合
? ? ? ? 3:定義linux命令需要用反單引號
? ? ? 3.區(qū)分單引號和雙引號的不同和相同點
????????雙引號中有$變量名,輸出的是變量名對應的變量值
????????單引號中有$變量名,輸出的是$變量名
? ? ? ? 4.腳本的命名格式
? ? ? ? ? 腳本名稱使用.sh結尾
? ? ? ? 5.腳本的起始行格式
? ? ? ? ? ? 第一行必須寫# !/bin/bash
????????6.腳本輸入輸出格式
? ? ? ? ? ? ?輸入語句用:read-p"描述"2:Shell輸出值:echo$變量名
? ? ? ? ?7.腳本的調用
????????????方式1:./腳本名.sh(權限的問題)
????????????方式2: sh 腳本名.sh
????????8.參數(shù)傳遞
????????????參數(shù)傳遞 :向.sh文件中傳遞數(shù)據(jù)
? ? ? ? ? ? ?格式: sh 腳本名.sh 參數(shù)
三、比較運算符和邏輯運算符
1)比較運算符(數(shù)字)
????????-eq 比較是否相等equal-
????????ne 比較不相等 notequal-
????????gt 比較大于greater than-
????????ge 比較大于等于greaterequal-
????????lt 比較小于less than-
????????le 比較小于等于 lessequal
(2)比較運算符(字符串)
????????==? 比較是否相等
????????!=? 比較不相等
????????加一操作:((i++))((i+=1))加n操作:s=$(($s+$i))s=$[$s+$i]((s=$s+$i))
(3)邏輯運算符
????????-a? 邏輯與
? ? ? ?- o? 邏輯或? ? ?
????????!? ? 邏輯非
四、if語句
????????單條件語句格式:
????????if [ 條件 ] then 語句 else 語句 fi
五、case規(guī)則
? ??????case $變量名 in
????????"值")
????????語句;;
????????"值")
????????語句;;
????????.....
????????esac
六、For循環(huán)
?????for 變量 in 列表
? ? ?do
? ? ?語句
? ? ?done
七、While循環(huán)
????while [條 件 ]
????do
????語句
????done