這篇“l(fā)inux中shell腳本指的是什么”文章的知識點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“l(fā)inux中shell腳本指的是什么”文章吧。
創(chuàng)新互聯(lián)建站專注于企業(yè)成都全網(wǎng)營銷、網(wǎng)站重做改版、明山網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場景定制、商城建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為明山等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
在linux中,shell腳本是一種編程方式,就是一些命令的集合。shell腳本將一些shell語法與指令寫在里面,利用管道命令以及流量重導(dǎo)向等功能,達(dá)到想要的處理目的,是臨時寫的小程序用于完成當(dāng)前的工作。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
一.shell腳本的概念及意義
shell腳本是linux下的一種編程方式,腳本(shell script)是利用shell的功能所寫的一個程序,這個程序是使用純文本文件,將一些shell的語法與指令寫在里面,然后用正規(guī)表示法,管道命令以及數(shù)據(jù)流重導(dǎo)向等功能,以達(dá)到我們所想要的處理目的。說白了,就是為了解決linux的實際問題,臨時寫的一個小程序來完成當(dāng)前的工作,如果需要多次使用,還能保存下來循環(huán)使用。
二.腳本的規(guī)范
腳本使用了shebang機(jī)制,即這樣的格式:!#/bin/bash、!#/use/bin/python。需要簡單的進(jìn)行shell腳本的解釋。下面舉一個樣例:
#!/bin/bash # —————————————— # Filename: hello.sh # Revision: 1.1 # Date: 2017/08/05 # Author: Mr.Dong # Email: Dong@gmail.com # Website: www.magedu.com # Description: This is the first script # —————————————— echo “hello world”
利用這些信息,可以很快知道這個腳本的用處,以便于工作的使用。
在運(yùn)行的時候可以使用下面兩條命令進(jìn)行腳本調(diào)試
bash -n hello.sh 來查看腳本的語法錯誤
bash -x hello.sh 可以查看腳本的執(zhí)行步驟
三.變量
1.本地變量
本地變量只對當(dāng)前shell有效,對子shell無效(SHLVL查看是幾級shell)。
變量賦值:name=’value’
字符串賦值:name=”root”
變量引用:name=”$USER”
命令引用:name=COMMAND name=$(COMMAND)
顯示已定義的所有變量:set
刪除變量:unset name
2.環(huán)境變量
環(huán)境變量對當(dāng)前SHELL及其子SHELL均有效。
變量的聲明和賦值命令:
export name=VALUE declare -x name=VALUE
變量的引用:$name,${name}
顯示所有的環(huán)境變量命令:
env printenv export declare -x
bash自帶環(huán)境變量:
PATH SHELL USER UID HOME PWD SHLVL LANG MAIL HOSTNAME HISTSIZE
3.只讀變量
聲明只讀變量:
readonly name declare -r name
查看只讀變量: readonly -p
4.位置變量
$1, $2, … :對應(yīng)第1 、第2 等參數(shù),shift [n] 換位置
$0: 命令本身
$: 傳遞給腳本的所有參數(shù),全部參數(shù)合為一個字符串
$@: 傳遞給腳本的所有參數(shù),每個參數(shù)為獨(dú)立字符串
$#: 傳遞給腳本的參數(shù)的個數(shù)
$@ $ 只在被雙引號包起來的時候才會 有 差異
set —
四.算術(shù)運(yùn)算與邏輯運(yùn)算
1.算術(shù)運(yùn)算
算數(shù)運(yùn)算符:+ – * / %(取余) **(乘方)
常用的運(yùn)算:
(1) let var= 算術(shù)表達(dá)式
(2) var=$[ 算術(shù)表達(dá)式]
(3) var=$(( 算術(shù)表達(dá)式))
(4) var=$(expr arg1 arg2 arg3 …)
(5) declare –i var = 數(shù)值
(6) echo ‘ 算術(shù)表達(dá)式’ | bc
產(chǎn)生隨機(jī)數(shù)命令:echo $[$RANDOM%number] 0-number之間的隨機(jī)數(shù)
賦值運(yùn)算:+= -= *= /= %=
自增和自減:
let var+=1 let var++ let var-=1 let var–
2.邏輯運(yùn)算
true=0 false=1
與 1&&1=1 1&&0=0 0&&1=0 0&&0=0
或 1||1=1 1||0=1 0||1=1 0||0=0
非 !1=0 !0=1
五.test命令
test命令是shell環(huán)境中測試條件表達(dá)式的實用工具。
例如:
test “$A” == “$B” && echo “Strings are equal” [ “$A” == “$B” ] && echo “Strings are equal”
這兩種表述表達(dá)同一種意思。
[[ ]]表示支持正則表達(dá)式
數(shù)值比較: 字符串比較:
-gt 是否大于 >
-ge 是否大于等于 >=
-eq 是否等于 ==
-ne 是否不等于 !=
-lt 是否小于 <
-le 是否小于等于 <=
以上就是關(guān)于“l(fā)inux中shell腳本指的是什么”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。