您好,登錄后才能下訂單哦!
一、shell腳本基礎(chǔ)
1、第一個(gè)腳本
vim first.sh
分別使用三種方法執(zhí)行腳本:
./first.sh (需要有可執(zhí)行的權(quán)限)
sh first.sh
. first.sh(或source first.sh)
2、重定向與管道符
1)重定向輸出(>)
2)重定向輸出(>>追加)
3)重定向輸入<</font>
useradd jerry
vi pass.txt (在里面輸入123456,保存退出)
注明:將jerry用戶(hù)的密碼設(shè)置為123456
4)錯(cuò)誤重定向(2>)
5)混合重定向輸出(&>)
例如:在編譯源碼包的自動(dòng)化腳本中,若要忽略make,make install等操作過(guò)程的信息,可以將其定向到空文件/dev/null
先掛載光盤(pán)(第一章的“linux安全及高級(jí)應(yīng)用_web網(wǎng)絡(luò)服務(wù).iso”),將光盤(pán)的中的httpd-2.2.17.tar.gz文件解壓到/usr/src下,編寫(xiě)腳本安裝。
vim httpd_install.sh
chmod +x httpd_install.sh (設(shè)置可執(zhí)行權(quán)限)
./ httpd_install.sh (執(zhí)行腳本,等待結(jié)束后,查看結(jié)果)
6)管道符(|)
先查看以“/bin/bash”結(jié)尾的行
只輸出用戶(hù)名和登錄的shell列
7)管道符(|):提取根分區(qū)的磁盤(pán)使用率信息
二、使用shell變量
1、定義新的變量
2、變量賦值的特殊操作
1)雙引號(hào)使用(”):賦值的內(nèi)容包含空格時(shí)
2)單引號(hào)使用(’):賦值的內(nèi)容中包含$, ‘’ , \ 等具有特殊含義的字符時(shí)
3)反撇號(hào)使用(`): 用于將某個(gè)命令的輸出結(jié)果賦值給變量
4)$()來(lái)代替反撇號(hào)操作,可以解決嵌套的問(wèn)題
5)read命令:用來(lái)提示用戶(hù)輸入信息,例如:
3、設(shè)置變量的作用范圍
新定義的變量只在當(dāng)前shell有效,如果想進(jìn)入新的shell環(huán)境同樣有效,就需要使用export命令將變量導(dǎo)出為“全局變量”
exit
也可以在export導(dǎo)出全局變量的同時(shí),也可以為變量賦值,例如:
4、數(shù)值變量的運(yùn)算
加(+),減(-),乘(\*),除(/),求模(%)
三、特殊的shell變量
1、環(huán)境變量(系統(tǒng)自身就有)
環(huán)境變量系統(tǒng)安裝好了就存在,不用創(chuàng)建,可以直接使用,查看一下環(huán)境變量
我們可以把腳本直接添加到$PATH搜索路徑中去,這樣執(zhí)行腳本的時(shí)候就不用加./了
如:first.sh腳本在 /root目錄下
2、位置變量(系統(tǒng)自身就有)
位置變量也稱(chēng)之為位置參數(shù),使用$1,$2,$3,$4…..$9表示
3、預(yù)定義變量(系統(tǒng)自身就有)
$#(表示命令行中位置參數(shù)的個(gè)數(shù))
$*(表示所有位置參數(shù)的內(nèi)容)
$?(表示前一個(gè)命令執(zhí)行后的返回狀態(tài),返回值為0表示執(zhí)行正確,非0表示出現(xiàn)異常)
$0(表示當(dāng)前執(zhí)行的腳本或程序的名稱(chēng))
如:編寫(xiě)一個(gè)備份的小腳本
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。