中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

編程語言及test命令

發布時間:2020-07-22 13:55:01 來源:網絡 閱讀:355 作者:Runs_ 欄目:開發技術

編程語言:

    問題空間:使用人類的自然語言描述的任務

    解空間:就是使用編程語言描述任務的實施步驟和顯示最終結果


編程思想:能夠把編程語言所提供的語法格式,隨時隨地的轉換成能夠解決問題的思路。


對于編程語言的學習:

    1.學習編程語言的語法格式

    2.學習工具的使用(庫,命令)

    3.算法

    4.數據結構


學習編程語言的目的:將問題空間和解空間對應起來,最直接辦法是使用解空間的語言習慣來進行思考 


學習編程語言的目標:

將問題空間和解空間對應起來;最直接的辦法就是使用解空間的語言習慣來進行思考;


shell腳本編程:

shell腳本的內容和格式:

首行,絕對行首,shebang(解釋器程序的絕對路徑)

注釋信息:以#占據絕對行首的行;

為了能在程序中突出程序的功能,適當的添加空白行,以分隔不同功能的源代碼塊;

有一定的縮進    

   利用bash腳本編程實現算數運算:

   +

   —

   *

   /

   % 模運算 取余

   **|^ 乘方

   增強型算術運算符號:

   +=  let B=B+1 ---> let B+=1

   -=

   /=

   *=

   %=

   特殊的增強型算術運算:

   B=B+1  B+=1  B++


   算數運算方法:

     1.let VAR=算數表達式

       將算數表達式先行進行算數運算,并將運算得到的結果保存到變量VAR中。

     2.VAR=$[算術表達式]

       算術表達式中如果有變量引用,可以使用$引用,也可以省略$

       SUM=$[C+B] 相當于 SUM [$C+$B]

     3.VAR=$((算術表達式))

       算術表達式中如果有變量引用,可以使用$引用,也可以省略$

     4.expr ARGU1 ARGU2 ARGU3

       ARGU1和ARGU3必須是數值

       ARGU2必須是運算符號

     5.echo “算數表達式” | bc


     注意:* 在某些情況下需要轉義。

   變量:

     弱變量,弱類型的變量,字符型(默認)數值型(不包括浮點型)


 條件測試命令:

   test EXPRESSION

     shell的內建命令


   [EXPRESSION]

     外部命令


   `EXPRESSION`

     bash的內部關鍵字


     注意:這類命令一般沒有執行結果,只有執行狀態返回值


     test測試命令有三類測試表達式:

       1.數值測試:雙目操作符

         -eq:被測試的兩個數值是否相等,相等為真,不等為假

         -ne:被測試的兩個數值是否不等,不等為真,相等為假

         -gt:被測試的兩個數值左面的是否大于右面的,大于為真,小于為假

         -lt:被測試的兩個數值左邊的是否小于右邊的,小于為真,大于為假

         -ge:被測試的兩個數值左邊的是否大于等于右邊的,大于等于為真,小于為假

         -le:被測試的兩個數值左邊的是否小于等于右邊的,小于等于為真,大于為假


       2.字符串測試

         雙目操作符:

           ==|= :被測試的兩個字符串是否相同,相同為真,不同為假。

           != :被測試的兩個字符串是否不相同,不同為真,相同為假。

           > :被測試的兩個字符串在ASCII碼表中對應的二進制數值,左邊是否大于右邊,大于為真,小于為假。

           < :被測試的兩個字符串在ASCII碼表中對應的二進制數值,左邊是否小于右邊,小于為真,大于為假。

               注意:大于號和小于號必須用在`EXPRESSION`

           =~ :被測試的兩個字符串,左側的字符串能否被右側的PATTERN匹配,能匹配為真,不能為假。


         單目操作符:

           -z "STRING" :判斷指定的字符串是否為空串,空為真,不空為假。

           -n "STRING" :判斷指定的字符串是否為非空串,非空為真,空為假。

              注意:

              1.通常情況下字符串要加引號,單引號或雙引號都行,根據實際情況選擇即可。

              2.[[]]和[]在某些情況下,可能意義不同,區分使用。

              3.表達式的兩端以及操作符的兩端都要有空格


       3.文件狀態測試

         單目測試:

         文件的存在性測試:如果被測試的文件存在則為真,不存在則為假。

           -a|-e

            [-e /backup]

         

         文件類型測試(先測試存在性):

           -b FILE:被測試的文件是否存在并且是否為塊設備,存在且為塊設備為真,否則為假。

           -c FILE:被測試的文件是否存在并且是否為字符設備……

           -d FILE:被測試的文件是否存在并且是否為目錄文件……

           -f FILE:被測試的文件是否存在并且是否為普通文件……

           -h|-L FILE:被測試的文件是否存在并且是否為符號鏈接文件……

           -p FILE:被測試的文件是否存在并且是否為管道文件……

           -S FILE:被測試的文件是否存在并且是否套接字文件……

         

         文件的訪問權限測試:

           -r FILE:被測試的文件是否存在并且當前有效用戶是否可讀,文件存在并且當前有效用戶可讀為真,否則為假

           -w FILE:被測試的文件是否存在并且當前有效用戶是否可寫……

           -x FILE:被測試的文件是否存在并且當前有效用戶是否可執行……

         

         文件的特殊權限標識測試:

           -u FILE:被測試的文件是否存在并且是否設置了SUID權限,文件存在并且設置了SUID權限為真,否則為假。

           -g FILE:被測試的文件是否存在并且是否設置了GUID權限,……

           -k FILE:被測試的文件是否存在并且是否設置了STICKY權限,……


         文件的所有權測試:

           -o FILE:被測試的文件是否存在并且其屬主是否為當前有效用戶

           -G FILE:被測試的文件是否存在并且其屬組是否為當前有效用戶的組


         文件內容是否為空:

           -s FILE:被測試的文件是否存在并且內容不為空,存在且內容不為空為真,否則為假。


         時間戳測試:

           -N FILE:被測試的文件從上一次被修改后,是否被修改過。


          雙目測試:

          FILE1 -ef FILE2:被測試的兩個文件是否指向同一個文件系統的相同inode的用硬連接

          FILE1 -nt FILE2:被測試的兩個文件,FILE1是否比FILE2更新

          FILE1 -ot FILE2:被測試的兩個文件,FILE1是否比FILE2更舊


        測試語句中可以添加邏輯運算:

          第一種表達方式:

          [ -o/tmp/test]&&[-s/tmp/test ]

          [ -o/tmp/test]||[-s/tmp/test ]

           ![-o/tmp/test ]

          第二種表達方式:

          [ -o/tmp/test -a -s /tmp/test ]

          [ -o/tmp/test -o -s /tmp/test ]

           [ !-o/tmp/test ]

命令的執行結果:

正常的輸出結果

命令的執行狀態返回值:

0-255

0:表示命令執行成功

1,2,127:系統保留的;

3-126,128-255:用戶自定義的執行狀態返回值;

           exit[#]

           退出當前shell的登錄

           當shell腳本運行時,一旦遇到exit命令,將立即結束當前shell進程,同時腳本運行也將被停止,即exit后面的所有命令不再執行


向AI問一下細節
推薦閱讀:
  1. notepad test
  2. Load Test

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

炎陵县| 哈巴河县| 双柏县| 察隅县| 宁海县| 西乌珠穆沁旗| 平湖市| 长阳| 福泉市| 西宁市| 宁国市| 芷江| 武义县| 上蔡县| 明星| 霍林郭勒市| 土默特右旗| 息烽县| 萨嘎县| 哈巴河县| 万荣县| 灵山县| 溆浦县| 雷州市| 成都市| 汉川市| 连江县| 河间市| 杂多县| 上饶县| 东宁县| 延长县| 贵溪市| 科技| 金华市| 萨迦县| 桦南县| 陕西省| 东乡县| 黔江区| 蒙自县|