shell編程基礎(chǔ)
1、為什么要學(xué)shell編程
Linux系統(tǒng)中會(huì)大量的使用shell,工作中我們也需要自動(dòng)化實(shí)現(xiàn)業(yè)務(wù)
例如:自動(dòng)備份、監(jiān)控、自動(dòng)安裝服務(wù)
shell編程是Linux運(yùn)維人員必須學(xué)會(huì)的編程語言。最簡單的
編程也是運(yùn)維人員必須具備的本領(lǐng)
shell Python是運(yùn)維必備的本領(lǐng)
2、什么是shell?
shell就是解釋器(翻譯官),命令行的命令及腳本都是通過shell解釋,
傳給操作系統(tǒng),處理后給輸出給用戶
3、shell的分類
sh ksh bash 三類
4、C7支持的shell種類
/bin/sh /bin/bash
5、什么是shell腳本
程序、命令放入文件里執(zhí)行,這個(gè)文件稱為shell腳本文件
工作中最多寫腳本編程,存放在文件里
6、shell變量
a.全局變量(環(huán)境變量)
整個(gè)系統(tǒng)中生效、一般是大寫、系統(tǒng)中默認(rèn)存在一些變量
滿足系統(tǒng)和程序運(yùn)行的需求
b.局部變量(自定義變量)
是編程shell腳本時(shí)最常用的變量
變量名=值 如 a=1
變量名:數(shù)字、字母、下劃線,不能是數(shù)字開頭
= 等號(hào):賦值符,把什么東西給誰,賦值兩邊不能有空格
引用內(nèi)容的符號(hào):單引號(hào)、雙引號(hào)、反引號(hào)、不加引號(hào)
解析變量 解析命令
7、表達(dá)式
[ 表達(dá)式 ] 中括號(hào)表達(dá)式,中括號(hào)兩端必須有空格
8、正則表達(dá)式
-gt INTEGER1 is greater than INTEGER2= -ge INTEGER1 is greater than or equal to INTEGER2
< -lt INTEGER1 is less than INTEGER2
<= -le INTEGER1 is less than or equal to INTEGER2
= -eq INTEGER1 is equal to INTEGER2
不等于 -ne INTEGER1 is not equal to INTEGER2
例子
注意:
1)整數(shù)表達(dá)式符 兩端必須要有空格
2)中括號(hào)里面兩端必須要有空格
3)變量和比較的內(nèi)容,不需要加引號(hào)
字符表達(dá)式:
-z 變量內(nèi)容長度為0時(shí),為真(表達(dá)式正確) zero
-n 變量長度不為0時(shí),為真(表達(dá)式正確) not zero
a==a 字符串是否相同
1)字符串要加雙信號(hào)
二、shell編程語句
1、if判斷語句
語法:
if [ 表達(dá)式 ]
then
echo "如果"
elif [ 表達(dá)式 ]
echo "或者"
else [ 表達(dá)式 ]
echo "那么"
fi
全局變量參數(shù):
read 命令 交互式讀取用戶輸入
-p 提醒
-t 多長時(shí)間內(nèi)等待輸入
例子1
例子2
2、for循環(huán)
語句:
for n in 取值列表
do
執(zhí)行命令
done
例子:
3、書寫腳本習(xí)慣
1)以.sh結(jié)尾
2)腳本開頭第一行 #!/bin/bash 腳本內(nèi)容由誰解釋
由于Linux下默認(rèn)是bash,所以也可以不寫







