中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

Linux學(xué)習(xí)筆記:bash特性之多命令執(zhí)行,shell腳本-創(chuàng)新互聯(lián)

今天我們學(xué)習(xí)了bash特性多命令執(zhí)行包括各個命令之間的邏輯關(guān)系。其中包含“與”“或”“非”命令的執(zhí)行。下面即為我們所學(xué)習(xí)的這些邏輯命令關(guān)系之間的關(guān)系。

成都創(chuàng)新互聯(lián)公司是一家以網(wǎng)絡(luò)技術(shù)公司,為中小企業(yè)提供網(wǎng)站維護(hù)、成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè)、網(wǎng)站備案、服務(wù)器租用、國際域名空間、軟件開發(fā)、微信小程序定制開發(fā)等企業(yè)互聯(lián)網(wǎng)相關(guān)業(yè)務(wù),是一家有著豐富的互聯(lián)網(wǎng)運營推廣經(jīng)驗的科技公司,有著多年的網(wǎng)站建站經(jīng)驗,致力于幫助中小企業(yè)在互聯(lián)網(wǎng)讓打出自已的品牌和口碑,讓企業(yè)在互聯(lián)網(wǎng)上打開一個面向全國乃至全球的業(yè)務(wù)窗口:建站聯(lián)系熱線:18980820575

 選擇執(zhí)行結(jié)構(gòu):

  邏輯運算:

   與:邏輯乘法,&&

    0:成功執(zhí)行 -->true

    1-255:失敗 -->false

    true && true =true

    true && false = false

    false && true = false

    false && false = false

    “與”運算的短路邏輯運算:只要第一個操作數(shù)為false,則其邏輯運算的結(jié)果一定為false;

    COMMAND1 && COMMAND2

     如果COMMAND1能夠成功執(zhí)行,則COMMAND2會被執(zhí)行;

     如果COMMAND1執(zhí)行失敗,則COMMAND2不會被執(zhí)行。

    或:邏輯加法,||

     true || true = true

     true || false = true

     false || true = true

     false || false = false

     “或”的短路邏輯運算:只要第一個操作數(shù)為true,其邏輯運算的結(jié)果一定為true;

    COMMAND1 || COMMAND2

     只要COMMAND1能夠成功執(zhí)行,COMMAND2就沒必要執(zhí)行了。

     只有當(dāng)COMMAND1執(zhí)行失敗的時候,COMMAND2才會被執(zhí)行。

    非:邏輯取反,!,單目運算符

     !STRING:讀取命令歷史空間的內(nèi)容;

     !true = false

     !false = true

     !COMMAND

     !COMMAND1 && COMMAND2 相當(dāng)于 COMMAND1 || COMMAND2

     !COMMAND1 || COMMAND2 相當(dāng)于 COMMAND1 && COMMAND2

    德摩根定律:

     ?。ˋ && B) ==!A || !B

     ?。ˋ || B) ==!A && !B

    邏輯運算符號優(yōu)先級:!>&& >||

    異或(雙目運算):比對兩個操作數(shù)是否不同,如果不同,則邏輯運算結(jié)果為真;如果相同,則邏輯運算結(jié)果為假;

 shell腳本編程:

 什么叫編程?簡單來說就是編寫程序源代碼。為了能夠讓用戶在使用計算機(jī)的時候,可以讓計算機(jī)以非交互的方式完成某些任務(wù),需要將這些任務(wù)編制成為一個文件,,讓計算機(jī)順序讀取,  從而實現(xiàn)功能;

編程語言:

  高級語言:

   根據(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ù)的;

     算法或指令的實現(xiàn)形式:

      順序執(zhí)行  選擇執(zhí)行  循環(huán)執(zhí)行

    對象式編程語言:

     以數(shù)據(jù)為中心,將數(shù)據(jù)實例化為類,圍繞著數(shù)據(jù)的需求來部署指令

     類、屬性、方法

  低級語言:

   匯編語言

shell腳本編程

 過程式編程語言,解釋運行,依賴于外部程序文件運行;

shell腳本到底是什么?

 1.純文本文檔--文件中所存儲的數(shù)據(jù)都是以字符為單位進(jìn)行存儲的;

 2.根據(jù)用戶的需求來解決用戶問題的大量命令的組合體;

 3.“執(zhí)行冪等性”--任何命令多次執(zhí)行的結(jié)果是一致的;

  很多命令不具備“執(zhí)行冪等性”,在shell腳本中就需要使用大量的程序來判斷某個命令是否滿足其運行條件,以避免在運行過程中出現(xiàn)嚴(yán)重錯誤;

shell腳本中的代碼內(nèi)容:

 1.首行必須是shebang,(頂格寫)解釋其路徑,必須占據(jù)絕對行首;在執(zhí)行時,啟動相應(yīng)的解釋器以解釋腳本內(nèi)諸多的命令;

  #!/bin/bash

  #!/bin/sh

  #!/usr/bin/python

  #!/usr/bin/perl

 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)解釋執(zhí)行代碼內(nèi)容,shell腳本的內(nèi)容是在一個子shell進(jìn)程中實現(xiàn)的。

我們可以利用文本編輯工具來編寫shell腳本:

 nano、vi、vim、emace、pico

推薦使用vim

約定下,腳本文件名的后綴為.sh 也可以不加

腳本的運行方法:

 1.為腳本文件賦予執(zhí)行權(quán)限,直接運行此文件;

  chmod +x /PATH/TO/SCRIPT_FILE

  ~]# /PATH/TO/SCRIPT_FILE

  如果在執(zhí)行腳本時,只寫腳本名不給出路徑的話,必須確保PATH變量中保存的路徑下,能找到該腳本;

 2.直接使用解釋器運行腳本,將腳本作為解釋器命令的參數(shù);

  bash /PATH/TO/SCRIPT_FILE

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

本文題目:Linux學(xué)習(xí)筆記:bash特性之多命令執(zhí)行,shell腳本-創(chuàng)新互聯(lián)
當(dāng)前地址:http://www.rwnh.cn/article28/dghgjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站營銷、網(wǎng)站策劃、標(biāo)簽優(yōu)化、移動網(wǎng)站建設(shè)、網(wǎng)站改版

廣告

聲明:本網(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)

營銷型網(wǎng)站建設(shè)
万荣县| 全南县| 三明市| 大关县| 镇江市| 中牟县| 永顺县| 沅陵县| 江达县| 永昌县| 罗江县| 仁怀市| 黄山市| 精河县| 隆回县| 清新县| 综艺| 芦溪县| 鄄城县| 鄄城县| 绥滨县| 茶陵县| 吉木乃县| 息烽县| 崇文区| 托克托县| 沂源县| 农安县| 固安县| 乐业县| 孙吴县| 湘西| 玉林市| 康定县| 孙吴县| 昌都县| 革吉县| 阿拉善左旗| 宽城| 克什克腾旗| 富宁县|