上一章主要簡單的介紹了乙個vim編輯器的一些用法,有人就想了啊,我們學習vim編輯器的主要目是什麼呢。哈哈哈,後面的博文就會來向大家介紹一下個人認為linux系統裡比較重要的一部分內容,shell程式設計。
講起shell有人就會想了,什麼是shell呢?其實我們可以將shell理解為終端介紹器,是人與計算機硬體的翻譯官,它作為使用者與linux系統通訊的媒介,除了能夠支援各種變數與引數外還支援一下迴圈,判斷,高階分支等。
其實呢當使用者將linux命令依次寫入乙個檔案中就算是乙個簡單的shell指令碼了。現在博主來寫乙個顯示工作路徑並顯示該路徑下所有檔案的指令碼。
#!/bin/bash
pwdls -al
執行該指令碼
看就可以了成功執行了,
其實shell指令碼的名稱是可以自定義設定的,但是我們一般為了避免和普通檔案衝突一般會在字尾加上.sh,以示這是乙個指令碼檔案,在上面的指令碼檔案中我們可以看到第一行"#!"這是告訴系統是用那種shell直譯器來執行指令碼的,要是使用者需要在指令碼中打上備註可以使用#即可,我們在執行指令碼時可用bash 加檔名稱,也可以直接輸入路徑執行檔案 ./ 檔名稱。若要執行的指令碼不在當前目錄則可以bash /root/weijia.sh直接寫入檔案路徑即可。
但是,像上面的指令碼都是只能執行預先輸入的命令這樣未免有點太過死板了,其實把linux系統預先以及想到了這些,已經內建了使用者接受引數的變數。$0對應的是當前指令碼的名稱,$#對應的是總共有幾個引數,$*對應的是所有位置的引數能夠列印出所有引數,$?對應的是上次命令的返回值,這個變數是經常要用到的。其餘位置的引數值分別用$1,$2...........代替。
判斷使用者引數
shell指令碼中判斷表示式是否成立,成立則返回數字0,否則則返回其他的隨機數值。測試語句的格式如下所示[ 條件表示式 ]
按照測試物件來劃分,條件測試語句一共分為四種。
檔案測試語句:
邏輯測試語句:
整數值比較語句;
字串比較語句;
檔案測試語句是指用指定的條件來判斷檔案是否存在或許可權是否滿足等情況的運算子。
-d------------------------------------------ 測試檔案是否為目錄型別
-e------------------------------------------測試檔案是否存在
-f-------------------------------------------判斷是否為一般檔案
-r-----------------------------------------測試當前使用者是否有許可權讀取
-w----------------------------------------測試當前使用者是否有許可權寫入
-x----------------------------------------測試當前使用者是否有許可權執行
光看這些語句可能會感覺很抽象,下面請看博主演示。
這條語句的大致意思呢,就是判斷該條檔案是否為目錄型別,然後顯示上條語句的執行結果。結果顯示1則為條件不成立。
邏輯測試語句
邏輯「與」運算子是$$-------------------它表示當前面命令執行成功後才會執行後面的命令
邏輯「或」運算子是||------------------------它表示前面的命令執行失敗後才會執行後面的命令
邏輯"非「運算子是!---------------------它表示把條件測試中的判斷取相反值。
整數值比較語句
-eq-------------------------------是否等於
-ne--------------------------------是否不等於
-gt---------------------------------是否大於
-lt----------------------------------是否小於
-le---------------------------------是否等於或者大於
-ge--------------------------------是否大於或者等於
字串比較語句
=-------------------------------比較字串內容是否相同
!=-----------------------------比較字串內容是否不相同
-z-----------------------------判斷字串內容是否為空
linux shell 基本語法
從程式設計師的角度來看,shell本身是一種用c語言編寫的程式,從使用者的角度來看,shell是使用者與linux作業系統溝通的橋梁。使用者既可以輸入命令執行,又可以利用 shell指令碼程式設計,完成更加複雜的操作。在linux gui日益完善的今天,在系統管理等領域,shell程式設計仍然起著不...
Linux shell基本語法
1.shell變數 一般shell的變數賦值的時候不用帶 而使用或者輸出的時候要帶 加減乘除的時候要加兩層小括號。括號外面要有乙個 括號裡面的變數可以不用 需要注意的是,變數賦值,變數使用的時候不能有空格,否則會被解析成命令,報錯無此命令。bin bash a 1b 2 c a b echo c e...
linux shell 簡單用法
2.1.1shell命令列書寫規則 1,在執行shell命令時多個命令可以在乙個命令列上執行,但此時要使用分號 分隔命令.2,長shell命令列可以使用反斜線字元 在命令列上擴充 echo pwd mkdir test1 cd test1 echo pwd2.1.2shell程式中使用的引數 1,位...