您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)shell的基礎(chǔ)應(yīng)用有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
一丶什么是shell?
Shell是在linux你忽然與用戶之間的解釋器程序,通常指的是bash,負(fù)責(zé)想內(nèi)核翻譯及傳達(dá)用戶/程序指令
Shell的使用方法:
1.交互式執(zhí)行指令:人工干預(yù),執(zhí)行效率低.
2.非交互執(zhí)行指令:安靜地在后臺(tái)執(zhí)行,執(zhí)行效率高,方便寫(xiě)腳本.
cat /etc/shell 查看本機(jī)所有的解釋
yum -y install ksh 安裝新解釋器
bash的優(yōu)點(diǎn)
tab補(bǔ)齊 別名 快捷鍵 歷史命令 管道 重定向
編寫(xiě)Shell腳本規(guī)范
1.聲明解釋器
#!/bin/bash
2.注釋,可以說(shuō)明腳本功能,變量的作用等
3.執(zhí)行代碼
+x權(quán)限
直接使用解釋器執(zhí)行,使用新解釋器執(zhí)行(開(kāi)啟子進(jìn)程)
使用source(或者 .+空格 )命令執(zhí)行,使用當(dāng)前解釋器執(zhí)行(不開(kāi)啟子進(jìn)程) //source test01.sh
部署yum倉(cāng)庫(kù)腳本:
#!/bin/bash
#部署yum
echo "[adc]
name=adc
baseurl=http://content.example.com/rhel7.0/x86_64/dvd
enabled=1
gpgcheck=0" > /etc/yum.repos.d/adc.repo
匯率查詢http://www.gendan5.com/exrate.html
部署ftp腳本:
#!/bin/bash
yum -y install vsftpd &> /dev/null
systemctl restart vsftpd
systemctl enable vsftpd
常量:固定不變
變量:靈活多變,腳本多使用變量可以增加性能
變量的種類
1.自定義變量
變量名稱=變量的值 定義變量值的過(guò)程叫做賦值,名稱的定義可以用大小寫(xiě)字母,數(shù)字,下劃線,不能以數(shù)字開(kāi)頭,不能使用特殊符號(hào)
a=20 //定義變量
echo $a //調(diào)用變量
a1=20
1a=20 //定義失敗
a_1=20
a$=20 //定義失敗
a=40
echo $a RMB
unset a //取消變量定義
環(huán)境變量
UID當(dāng)前用戶的ID USER當(dāng)前用戶名 SHELL當(dāng)前用戶的解釋器 HOSTNAME主機(jī)名 HOME當(dāng)前用戶的家目錄 PWD所在目錄的位置 PATH存放命令的位置
PS1一級(jí)提示符 PS2二級(jí)提示符
變量的擴(kuò)展應(yīng)用
" "界定范圍
' '界定范圍,屏蔽特殊符號(hào)
` `反撇號(hào),可以獲取命令執(zhí)行結(jié)果 == $( )
stty -echo //屏蔽回顯
stty echo //恢復(fù)回顯
a=20
export a 局部變量->全局變量
export -n a 全局變量->局部變量
計(jì)算
方法一
expr 1 + 1
expr 1 - 1
expr 1 / 1
expr 1 \* 1 1 '*' 1 \轉(zhuǎn)義符號(hào) 屏蔽之后一個(gè)字符的特殊含義
expr 5 % 2 >>>> 1 求模,取余數(shù)
方法二
echo $[ 1+1]
echo$[a+a]
方法三
let 運(yùn)算結(jié)果不顯示,通常用于使用運(yùn)算結(jié)果定義變量的值,或者對(duì)變量進(jìn)行自增減
let a++
let a--
let a+=2
let a-=2
方法四
bc計(jì)算器,可以計(jì)算小數(shù)
echo 1.15+5.04 | bc
echo scale=3;10/3 | bc //scale定義小數(shù)點(diǎn)后幾位
看完上述內(nèi)容,你們對(duì)shell的基礎(chǔ)應(yīng)用有哪些有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責(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)容。