56 shell腳本

1.什么是shell

shell是一個(gè)命令解釋器耕皮,將人類輸入高級(jí)語(yǔ)言,通過shell程序轉(zhuǎn)換為二進(jìn)制
shell分為兩種使用方式
  • 交互: 登錄 執(zhí)行命令 退出
  • 非交互:執(zhí)行某個(gè)文件蝙场,文件中都是一堆命令凌停,整個(gè)文件從上往下執(zhí)行

2.shell腳本能做什么

標(biāo)準(zhǔn):

    1.安裝方式一致
    2.安裝路徑一致
    3.目錄結(jié)構(gòu)一致
    4.日志格式一致
    5.腳本路徑一致
能將平時(shí)操作腳本化,流程化售滤,自動(dòng)化     ITIL 
    ppt   人  流程   技術(shù)/工具
備份
監(jiān)控
自動(dòng)化上線
約束標(biāo)準(zhǔn)

3.Shell腳本編寫規(guī)范、執(zhí)行方式完箩。

執(zhí)行方式分為兩種:
    1.加執(zhí)行權(quán)限                 ./script_filename.sh
    2.通過bash直接翻譯   bash  script_filename.sh


'#!/usr/bin/bash  加與不加區(qū)別在哪?
    1.如果你明確清楚這是一個(gè)什么類型的腳本,直接調(diào)用對(duì)應(yīng)的解釋器執(zhí)行,沒有影響?
    2.如果你不清楚是什么類型的腳本, 直接使用./執(zhí)行,那么會(huì)讀取該腳本的第一行
        如果第一行是#!/usr/bin/bash 或者 沒有寫該行,那么都將使用默認(rèn)的bash翻譯
        問題: 如果我是一個(gè)python腳本,沒有寫開頭,那么執(zhí)行一定會(huì)報(bào)錯(cuò)
            因?yàn)槟J(rèn)查找的是bash解釋器,而我的文件需要用python解釋器來(lái)翻譯.

添加命令解釋器的幾種方式:
    #!/usr/bin/bash
    #!/usr/bin/sh
    #!/usr/bin/env bash
    #!/usr/bin/env python

1.什么是變量

變量是shell中傳遞數(shù)據(jù)的一種方法赐俗。
簡(jiǎn)單理解: 就是用一個(gè)固定的字符串去表示不固定的值,便于后續(xù)引用弊知。

2.定義變量規(guī)范

1.大寫開頭,后面小寫或數(shù)字都o(jì)k
2.變量具體一定的含義
3.注意  變量的寫法 僅支持 a=1         不支持  a = 1

3.自定義變量

var="hello world"
echo $var
echo ${var}_log
$* 和 $@ 的區(qū)別?
可以看到不加引號(hào)時(shí),二者都是返回傳入的參數(shù),但加了引號(hào)后,此時(shí)$*把參數(shù)作為一個(gè)字符串整體(單字符串)返回,$@把每個(gè)參數(shù)作為一個(gè)字符串返回

1.定義變量幾種方式

    1.1 自定義變量
    1.2 系統(tǒng)全局變量
    1.3 位置參數(shù)變量   sh test.sh  11 22 
    1.4 預(yù)定義變量    $? $#

2.通過read交互方式讀入變量

    read  -t -s -n -p 

3.變量替換

    ${var#}     
    ${var##}
    ${var%}
    ${var%%}
    ${var//}
    ${var///}
    ${#var}
image.png

4.變量計(jì)算
(())[] expr

5.注意事項(xiàng):

    ${}             #引用變量
    $()             #和``功能相同, 都是用來(lái)做命令替換
    $(())           #進(jìn)行整數(shù)運(yùn)算
    $[]             #進(jìn)行整數(shù)運(yùn)算
    ""              #弱引用,會(huì)解析變量
    ''              #強(qiáng)引用,所見即所得

6.if在判斷的過程中,需要表達(dá)式
1.基于文件的方式判斷 -d判斷目錄是否存在 -f判斷文件是否存在 -s判斷是否有內(nèi)容默認(rèn)是有 -e判斷是否有這個(gè)對(duì)象 -z 空文件 -n非空
2.基于整數(shù)的方式判斷 -eq 等于 -ne不等 -ge大等 -gt大于 -le小等 -lt小于
3.基于字符串方式判斷 = !=
4.基于正則表達(dá)式方式判斷 =~ ^[0-9]+^[a-z]+ ^[A-Z]+^[a-Z]+
正則表達(dá)式外面格式為[[ ]]

image.png

image.png

image.png

image.png

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末阻逮,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子秩彤,更是在濱河造成了極大的恐慌叔扼,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件漫雷,死亡現(xiàn)場(chǎng)離奇詭異瓜富,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)降盹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門与柑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說我怎么就攤上這事价捧〕竽睿” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵干旧,是天一觀的道長(zhǎng)渠欺。 經(jīng)常有香客問我,道長(zhǎng)椎眯,這世上最難降的妖魔是什么挠将? 我笑而不...
    開封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮编整,結(jié)果婚禮上舔稀,老公的妹妹穿的比我還像新娘。我一直安慰自己掌测,他們只是感情好内贮,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著汞斧,像睡著了一般夜郁。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上粘勒,一...
    開封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天竞端,我揣著相機(jī)與錄音,去河邊找鬼庙睡。 笑死事富,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的乘陪。 我是一名探鬼主播统台,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼啡邑!你這毒婦竟也來(lái)了贱勃?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤谣拣,失蹤者是張志新(化名)和其女友劉穎募寨,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體森缠,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡拔鹰,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了贵涵。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片列肢。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡恰画,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出瓷马,到底是詐尸還是另有隱情拴还,我是刑警寧澤,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布欧聘,位于F島的核電站片林,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏怀骤。R本人自食惡果不足惜费封,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蒋伦。 院中可真熱鬧弓摘,春花似錦、人聲如沸痕届。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)研叫。三九已至锤窑,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間嚷炉,已是汗流浹背果复。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留渤昌,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓走搁,卻偏偏與公主長(zhǎng)得像独柑,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子私植,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345