1、什么是shell腳本
Shell腳本與Windows/Dos下的批處理相似,也就是用各類命令預(yù)先放入到一個(gè)文件中,方便一次性執(zhí)行的一個(gè)程序文件,主要是方便管理員進(jìn)行設(shè)置或者管理用的。但是它比Windows下的批處理更強(qiáng)大,比用其他編程程序編輯的程序效率更高,它使用了Linux/Unix下的命令。
定義變量規(guī)則:
變量名=值
shell定義變量的規(guī)則:
等號(hào)兩邊不能有空格
定義圖書的變量需要單引或者雙引號(hào)結(jié)合
定義linux命令需,要用反單引號(hào)
取反單引號(hào)和山引號(hào)的不同點(diǎn)和相同點(diǎn)
雙引號(hào)中有$變量名,輸出的時(shí)變量名對(duì)應(yīng)的變量值
單引號(hào)中有$變量名,輸出的是$變量名
腳本的命名格式
腳本名稱使用.sh結(jié)尾
腳本的起始行格式
第一行必須寫# !/bin/bash
腳本輸入輸出格式
輸入語句用:read-p"描述"
Shell輸出值:echo$變量名
腳本的調(diào)用
./腳本名.sh(權(quán)限的問題)
?sh 腳本名.sh
參數(shù)傳遞
參數(shù)傳遞 :向.sh文件中傳遞數(shù)據(jù)
格式: sh 腳本名.sh 參數(shù)
$1:接收第一個(gè)參數(shù)~~$n
$n: 文件名稱
$@: 所有參數(shù) s
$#: 參數(shù)個(gè)數(shù)? $0
比較運(yùn)算符和邏輯運(yùn)算符
比較運(yùn)算符(數(shù)字)
-eq 比較是否相等equal
-ne 比較不相等 notequal
-gt 比較大于 greater than
-ge 比較大于等于 greaterequal
-lt 比較小于 less than
-le 比較小于等于 lessequal
比較運(yùn)算符(字符串)
== 比較是否相等
!=? 比較不相等
加一操作:((i++))((i+=1))
加n操作:s=$(($s+$i))s=$[$s+$i]((s=$s+$i))
邏輯運(yùn)算符
-a 邏輯與 -o邏輯或 !邏輯非
and? ? ? ? ? ? or
if語句
if [ 條件 ]
then
語句
else
語句
fi
多條件語句格式;
if [ 條件 ]
then
語句
elif [ 條件 ]
then
語句
......
else
語句
fi
case規(guī)則
case $變量名 in
"值")
語句;;
"值")
語句;;
.....
esac
For循環(huán)
for 變量 in 列表
do
語句
done
While循環(huán)
while [條 件 ]
? ? do
? ? 語句
? ? done
Shell腳本的函數(shù)
函數(shù)名(){代碼 }
調(diào)用格式
函數(shù)名
函數(shù)中的參數(shù)
使用$n來接收數(shù)據(jù)
函數(shù)中的返回值
查看函數(shù)的返回值$?