溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

shell腳本規(guī)范與變量運(yùn)用

發(fā)布時(shí)間:2020-07-11 03:17:57 來源:網(wǎng)絡(luò) 閱讀:237 作者:wx5d8ab22a0be5a 欄目:系統(tǒng)運(yùn)維

前言
隨著Linux系統(tǒng)在企業(yè)中應(yīng)用的越來越多,服務(wù)器自動(dòng)化管理也變得越來越重要。Linux服務(wù)器自動(dòng)化維護(hù)工作中,除了計(jì)劃任務(wù)的設(shè)置外,shell腳本的應(yīng)用也是非常重要的一部分。
什么是shell腳本
Shell腳本與Windows/Dos下的批處理相似,也就是用各類命令預(yù)先放入到一個(gè)文件中,方便一次性執(zhí)行的一個(gè)程序文件,主要是方便管理員進(jìn)行設(shè)置或者管理用的。但是它比Windows下的批處理更強(qiáng)大,比用其他編程程序編輯的程序效率更高,它使用了Linux/Unix下的命令。
shell腳本的應(yīng)用場景:

  • 重復(fù)性操作
  • 批量事務(wù)處理
  • 自動(dòng)化運(yùn)維
  • 服務(wù)運(yùn)行狀態(tài)監(jiān)控
  • 定時(shí)任務(wù)執(zhí)行
  • ......
    注意!shell腳本必須是可執(zhí)行文件(chmod +x ...)
    shell的作用——命令解釋器,翻譯官
    shell腳本規(guī)范與變量運(yùn)用
    /bin/bash支撐shell腳本的運(yùn)行
    Linux壓縮內(nèi)核放在/boot/目錄下
    編寫shell腳本代碼
  • 使用vi文本編輯器
  • 每行一條Linux命令,按執(zhí)行順序一次編寫
    執(zhí)行腳本文件啊
    shell腳本規(guī)范與變量運(yùn)用
    用source執(zhí)行命令會(huì)切換路徑執(zhí)行,用sh 不會(huì)切換路徑
    “ . / ” 的執(zhí)行方式和sh一樣
    shell腳本規(guī)范與變量運(yùn)用
    shell腳本規(guī)范與變量運(yùn)用
    重定向與管道操作
    交互式硬件設(shè)備
    標(biāo)準(zhǔn)輸入:從該設(shè)備接收用戶輸入的數(shù)據(jù)
    標(biāo)準(zhǔn)輸出:通過該設(shè)備向用戶輸出數(shù)據(jù)
    標(biāo)準(zhǔn)錯(cuò)誤:通過該設(shè)備報(bào)告執(zhí)行出錯(cuò)信息
    shell腳本規(guī)范與變量運(yùn)用
    重定向操作
    shell腳本規(guī)范與變量運(yùn)用
    管道操作符號(hào)" | "
    Shell變量的作用、類型
    變量的作用
    為靈活管理Linux系統(tǒng)提供特定參數(shù),有兩層意思
  • 變量名:使用固定的名稱,由系統(tǒng)預(yù)設(shè)或用戶定義
  • 變量值:能夠根據(jù)用戶設(shè)置、系統(tǒng)環(huán)境的變化而變化
    變量的類型

  • 自定義變量:由用戶自己定義、修改和使用
  • 環(huán)境變量:由系統(tǒng)維護(hù),用于設(shè)置工作環(huán)境
  • 位置變量:通過命令行給腳本程序傳遞參數(shù)
  • 預(yù)定義變量:Bash中內(nèi)置的一類變量,不能直接修改
    自定義變量
    定義一個(gè)新的變量
    變量名以字母或下劃線開頭,區(qū)分大小寫,建議全大寫
    變量名=變量值(“=”賦予符號(hào))
    shell腳本規(guī)范與變量運(yùn)用
    查看變量的值,用“echo”命令

shell腳本規(guī)范與變量運(yùn)用
shell腳本規(guī)范與變量運(yùn)用
賦值時(shí)使用引號(hào)

  • 雙引號(hào):允許通過$符號(hào)引用其他變量值
  • 單引號(hào):禁止引用其他變量值,$視為普通字符
  • 反撇號(hào):命令替換,提取命令執(zhí)行后的輸出結(jié)果
    從鍵盤輸入內(nèi)容為變量賦值
    read [-p "提示信息"] 變量名

    shell腳本規(guī)范與變量運(yùn)用
    shell腳本規(guī)范與變量運(yùn)用

設(shè)置變量的作用范圍,兩種格式可以混合使用
格式1:export 變量名
格式2:export 變量名=變量值
整數(shù)變量的運(yùn)算
expr 變量1 運(yùn)算符 變量2 [運(yùn)算符 變量3] ……
常用運(yùn)算符

  • 加法運(yùn)算:+
  • 減法運(yùn)算:-
  • 乘法運(yùn)算:*
  • 除法運(yùn)算:/
  • 求模(取余)運(yùn)算:%
    shell腳本規(guī)范與變量運(yùn)用
    特殊的Shell變量
    環(huán)境變量
    由系統(tǒng)提前創(chuàng)建,用來設(shè)置用戶的工作環(huán)境
    配置文件:/etc/profile、~/.bash_profile
    常見的環(huán)境變量:
  • PWD、PATH
  • USER、SHELL、HOME
    位置變量
  • 表示為$n,n為1~9之間的數(shù)字
    預(yù)定義變量
  • $#:命令行中位置變量的個(gè)數(shù)
  • $*:所有位置變量的內(nèi)容
  • $?:上一條命令執(zhí)行后返回的狀態(tài),當(dāng)返回狀態(tài)值為0時(shí)表示執(zhí)行正常,非0值表示執(zhí)行異?;虺鲥e(cuò)
  • $0:當(dāng)前執(zhí)行的進(jìn)程/程序名
    shell腳本規(guī)范與變量運(yùn)用
    shell腳本規(guī)范與變量運(yùn)用
    shell腳本規(guī)范與變量運(yùn)用
向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI