Linux必須掌握的shell腳本基礎(chǔ)有哪些,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
創(chuàng)新互聯(lián)服務(wù)項目包括臨武網(wǎng)站建設(shè)、臨武網(wǎng)站制作、臨武網(wǎng)頁制作以及臨武網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,臨武網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到臨武省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1. shell 基本語法
shell:
shell 是一個命令解釋器,它在操作系統(tǒng)的最外層,負(fù)責(zé)直接與用戶進行對話,把用戶的輸入解釋給操作系統(tǒng),并處理各種各樣的操作系統(tǒng)的輸出結(jié)果,輸出到屏幕反饋給用戶。
什么是 shell 腳本:
把 Linux 命令或語句放在一個文件中,通過這個程序文件去執(zhí)行,這個程序為 shell 腳本或 shell 程序;可以在腳本中輸入系統(tǒng)的命令以及相關(guān)的語法語句組合,比如變量,流程控制語句等,把他們有機結(jié)合起來就形成了一個功能強大的 shell 腳本。
創(chuàng)建 shell 程序的步驟:
(1)創(chuàng)建一個包含命令和控制結(jié)構(gòu)的文件,vim first.sh
(2)修改這個文件的權(quán)限使它可以執(zhí)行,chmod +x first.sh
(3)檢測語法錯誤;
(4)執(zhí)行腳本。
執(zhí)行 shell 腳本的方式:
(1)通過絕對路徑執(zhí)行,/root/first.sh(需要添加可執(zhí)行權(quán)限x)
(2)bash first.sh 或 sh first.sh(可以不添加可執(zhí)行權(quán)限)
(3)source first.sh(可以不添加可執(zhí)行權(quán)限,在當(dāng)前 shell 執(zhí)行)
(4)sh < cal.sh,cat cal.sh |sh,cat cal.sh |bash(可以不添加可執(zhí)行權(quán)限)
初識 shell 腳本:
#!/bin/bash
# it is a shell!
echo "hello world!"
# 第一行:命令解釋器類型
# 第二行:注釋信息
2. shell 變量及運用
變量設(shè)置規(guī)則:
(1)變量名稱通常是大寫字母,可以由數(shù)字、字母(大小寫)和下劃線組成。變量名區(qū)分大小寫,不能以數(shù)字開頭;
(2)a=10,= 的作用是賦值,= 兩邊不能有空格;
(3)變量存儲的數(shù)據(jù)類型是整數(shù)型和字符串型;
(4)字符串型建議加引號。如果字符串中有空格,要用單引號‘’或雙引號“”包含起來;
(5)變量調(diào)用時,在變量前加 $,$a;
(6)如果需要增加變量的值,可以進行變量值的疊加。變量需要用雙引號包含“$變量名”或用${變量名}包含。
變量的分類:
按照變量的作用劃分:
(1)用戶自定義變量(字母或下劃線開頭,不能以數(shù)字開頭)
(2)環(huán)境變量:保存和系統(tǒng)操作環(huán)境相關(guān)的數(shù)據(jù)
(3)位置參數(shù)變量:外匯跟單:www.gendan5.com向腳本中傳遞參數(shù)或數(shù)據(jù)的,變量名不能自定義,變量的作用是固定的
(4)預(yù)定義變量:是 bash 中已經(jīng)定義好的變量,變量名不能自定義,變量的作用是固定的
按照變量的作用域劃分:
(1)全局變量:環(huán)境變量,值不隨 shell 腳本的執(zhí)行結(jié)束而消失,值傳遞給子 shell 而不傳遞給父 shell
env 命令查看所有全局變量:
export 聲明全局變量:
添加環(huán)境變量:
(2)局部變量:是 shell 程序內(nèi)部定義的,其使用范圍僅限于定義它的程序,對其它程序不可見。包括用戶自定義變量、位置變量和預(yù)定義變量
命令的替換:
使用 $() 或反引號。echo $(pwd) 或 echo `pwd`
命令的嵌套使用:
使用 $($())
單引號和雙引號:
在單引號中,所有的字符(包括特殊字符)都將解釋成字符本身成為普通字符;
在雙引號中,除了 $、'' 和 \ 以外所有的字符都解釋成字符本身。
刪除變量:
unset 變量名:刪除變量
定義變量的配置文件:
/etc/profile:系統(tǒng)全局環(huán)境和登陸系統(tǒng)的一些配置
/etc/bashrc:shell 全局自定義配置文件,用于自定義 shell
/root/.bashrc:用于自定義某個用戶的bash
/root/.bash_profile:用戶單獨自定義某個用戶的系統(tǒng)環(huán)境
插入永久變量:(1)vim /etc/profile;(2)在最后一行寫入 export var8=100,保存并退出;(3)source /etc/profile
位置變量:
特殊變量:
$*
以一個單字符串顯示所有向腳本傳遞的參數(shù)
$#
傳遞到腳本的參數(shù)的個數(shù)
$$
當(dāng)前進程的進程號 PID
$?
顯示最后命令的退出狀態(tài);0表示沒有錯誤,其他值都表示有錯誤
$!
后臺運行的最后一個進程的進程號 PID
3. 數(shù)學(xué)運算
expr 命令:
(1)對數(shù)字的基本計算;做比較時,輸出結(jié)果為假時為0,1為真;特殊符號用轉(zhuǎn)義符
(2)對字符串的處理
$(()):
運算符
意義
++ --
遞增 遞減
+ - !~
正 負(fù) 邏輯與取反
+ - * / %
加 減 乘 除 余數(shù)
< <= > >=
比較大小
== !=
相等 不相等
>> <<
向左位移 向右位移
& ^ |
按位的與 按位的異或 按位的或
&& ||
邏輯與 邏輯或
?:
條件判斷
計算從1加到100的值:
看完上述內(nèi)容,你們掌握Linux必須掌握的shell腳本基礎(chǔ)有哪些的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
當(dāng)前名稱:Linux必須掌握的shell腳本基礎(chǔ)有哪些
網(wǎng)站路徑:http://jinyejixie.com/article0/ppieoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、全網(wǎng)營銷推廣、做網(wǎng)站、軟件開發(fā)、小程序開發(fā)、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)