溫馨提示×

溫馨提示×

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

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

shell編程規(guī)范與變量

發(fā)布時間:2020-06-21 15:13:23 來源:網(wǎng)絡(luò) 閱讀:133 作者:友引町 欄目:系統(tǒng)運(yùn)維

概述
在計算機(jī)科學(xué)中,Shell俗稱殼(用來區(qū)別于核),是指“為使用者提供操作界面”的軟件(命令解析器)。它類似于DOS下的command.com和后來的cmd.exe。它接收用戶命令,然后調(diào)用相應(yīng)的應(yīng)用程序。

應(yīng)用場景
shell腳本就是將執(zhí)行的命令按順序保存到一個文本文件,并給改文件可執(zhí)行權(quán)限,方便一次性執(zhí)行的一個程序文件。常用于重復(fù)性操作、批量事務(wù)處理、自動化運(yùn)維、服務(wù)運(yùn)行狀態(tài)監(jiān)控、定時任務(wù)執(zhí)行等。

編程規(guī)范
Linux系統(tǒng)中Shell腳本是一個特殊的應(yīng)用程序,介于操作系統(tǒng)內(nèi)核和用戶之間,充當(dāng)一個”命令解釋器“的角色??梢酝ㄟ^/etc/shells文件了解 當(dāng)前系統(tǒng)所支持的Shell腳本種類。其中/bin/bash是大多數(shù)Linux版本采用的默認(rèn)Shell腳本。

shell編程規(guī)范與變量
shell編程規(guī)范與變量
shell腳本執(zhí)行命令

./ sh . 空格 cource

其中用./和sh執(zhí)行腳本不會改變當(dāng)前路徑。而.空格和source執(zhí)行可以改變路徑。當(dāng)使用./執(zhí)行shell腳本時需要賦予腳本執(zhí)行權(quán)限。

sh執(zhí)行shell編程規(guī)范與變量
./執(zhí)行shell編程規(guī)范與變量

source執(zhí)行
shell編程規(guī)范與變量

.空格執(zhí)行

shell編程規(guī)范與變量

管道與重定向

shell編程規(guī)范與變量

shell編程規(guī)范與變量

shell編程規(guī)范與變量

shell編程規(guī)范與變量

shell編程規(guī)范與變量

在上圖中,管道符號的作用時將前面的命令結(jié)果傳給后面的命令程序。awk即豎顯示,$1,$7即第一個和第七個位置變量。-F:表示以冒號分隔。

自定義變量

自定義變量時由用戶自己定義的變量,只在用戶自己的shell環(huán)境中有效,因此又稱為本地變量。

基本格式 "變量名=變量值",變量名稱需以字母或者下劃線開頭。

shell編程規(guī)范與變量
從標(biāo)準(zhǔn)輸入設(shè)備讀入一行內(nèi)容,為變量賦值,需用到read命令

shell編程規(guī)范與變量

位置變量

shell編程規(guī)范與變量
$shell編程規(guī)范與變量

預(yù)定義變量
用戶只能使用預(yù)定義變量,而不能創(chuàng)建預(yù)定義變量,也不能直接為預(yù)定義變量賦值。預(yù)定義變量使用$符號和另一個符號組合表示。

$#:表示命令行中位置參數(shù)個數(shù)
$*:表示所有位置參數(shù)內(nèi)容
$?:表示命令執(zhí)行后返回狀態(tài)。0表示執(zhí)行正確,非0表示執(zhí)行出現(xiàn)異常
$0:表示當(dāng)前執(zhí)行的腳本或程序名稱

shell編程規(guī)范與變量
shell編程規(guī)范與變量

向AI問一下細(xì)節(jié)

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

AI