bash的特性之多命令執(zhí)行:
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了壽陽免費建站歡迎大家使用!$()
管道:進(jìn)程間的通信(IPC)
順序執(zhí)行結(jié)構(gòu):
分號
選擇執(zhí)行結(jié)構(gòu):(邏輯運算)
與:邏輯乘法,&&
0:success-->true
1-255:failure-->false
true&&true = true
true&&false = false “與”短路邏輯運算:
只要第一個操作數(shù)為false,則其邏輯運算的結(jié)果一定為false,如果command1能夠成功執(zhí)行,則command2會被執(zhí)行,如果command1不能成功執(zhí)行,則command2不會被執(zhí)行
或:邏輯加法,||兩條管道
只有兩個結(jié)果都為false
ture || false = ture
只要第一個操作數(shù)為true,則結(jié)果一定為true
如果command1成功執(zhí)行,command2就沒有必要執(zhí)行
與和或都是雙目運算符
非:邏輯取反,?。簡文窟\算符
!string:讀取歷史命令空間的內(nèi)容
! command:
! true = false
! command1 $$ command2 相當(dāng)于 command1 || command2
邏輯運算符號優(yōu)先級:!> $$ > ||
德摩根定律:
異或:比對兩個操作數(shù)是否不同,如果不同,組邏輯運算結(jié)果為真,如果相同,則邏輯運算結(jié)果為假
shell腳本編程:
什么是編程:編寫程序源代碼
為了能夠讓用戶在使用計算機的時候,可以讓計算機以費交互式的方式完成某些任務(wù),需要將這些任務(wù)編制成為一個文件,讓計算機順序獲取,從而完成任務(wù)
編程語言:
高級語言:
根據(jù)源代碼的處理方式:
編譯運行語言:
源代碼--編譯器(編譯)--匯編器(匯編)--【鏈接器(庫的鏈接)】--可以直接執(zhí)行的二進(jìn)制文件
解釋運行語言:
源代碼--直接啟動跟源代碼對應(yīng)的解釋器程序,由解釋器邊編譯邊執(zhí)行
根據(jù)其匯編過程中的功能的實現(xiàn)是調(diào)用哭還是調(diào)用外部程序文件分為:
完整編程語言:利用庫或編程組件進(jìn)行編程
腳本編程語言:解釋器:
shell腳本:調(diào)用shell程序,其次調(diào)用需要的外部命令文件:命令解釋器
提供了單一功能的編程接口:過程式編輯邏輯的支持
根據(jù)程序的編寫范式:程序=指令+數(shù)據(jù)
過程式編程語言:
以指令為中心,圍繞指令(算法)的實現(xiàn)設(shè)計數(shù)據(jù)和數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)為指令服務(wù)的
對象式編程語言:
以數(shù)據(jù)為中心,將數(shù)據(jù)實例化為類,圍繞著數(shù)據(jù)的需求來部署指令
shell腳本編程
過程式編程語言,解釋運行,以來與外部程序文件運行
shell腳本是什么?
純文本文檔
根據(jù)用戶的需求解決用戶問題的大量命令的組合體
執(zhí)行冪等性(任何命令執(zhí)行的結(jié)果是一樣的)
很多命令不具備“執(zhí)行冪等性”,在shell腳本中就需要使用大量的程序邏輯來判斷某個命令是否滿足其運行條件,以避免在運行過程中出現(xiàn)嚴(yán)重錯誤
shell腳本中的代碼內(nèi)容:
1、首行必須是shebang,解釋器路徑,必須占據(jù)絕對行首;在執(zhí)行時,啟動相應(yīng)的解釋器以解釋腳本內(nèi)諸多的命令:
#!/bin/bash
2、在shell中,除了shebang之外,以#占據(jù)絕對首行的內(nèi)容,均為注釋行;解釋器會忽略這樣的航的內(nèi)容
3、解釋會忽略腳本中所有的空白行
4、大量的命令和關(guān)鍵字(if,else,then,do,while,for ...)
注意:shell腳本一旦運行,是在當(dāng)前的shell中根據(jù)shebang的指示、開啟一個解釋器(子shell)
解釋的行代碼內(nèi)容,shell腳本的內(nèi)容是在一個子shell進(jìn)程中實現(xiàn)的
我們可以利用編輯來編寫shell腳本
nano,vi,vim,emacs,pico,推薦使用vim
約定下,腳本文件名的后綴為.sh,也可以不加
腳本的運行方法:
1、為腳本文件賦予執(zhí)行權(quán)限,直接運行此文件
chmod +x /PATH/TO/SCRIPT_FILE
如果在執(zhí)行腳本時,只寫腳本文件名不寫文件路徑的話,必須確保PATH變量中保存的路徑下能夠找到此文件
2、直搜索接使用解釋器運行腳本,將腳本作為解釋器命令的參數(shù)
低級語言:
匯編語言
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。