Unix Shell 通配符、轉義字符、元字符、特殊字符

shell通配符:  
 
 *     匹配0或多個字符
      a*b  a與b之間能夠有任意長度的任意字符, 也能夠一個也沒有, 如aabcb, a01b, ab等

 ?     匹配任意一個字符
      a?b  a與b之間有且只有一個字符, 能夠是任意字符, 如aab, adb, a0b等
 
 [list]     匹配list中的任意單一字符 
         a[xyz]b  a與b之間有且只有一個字符, 且只能是x或y或z, 如: axb, ayb, azb。
 
 [!list]     匹配除list中的任意單一字符
          a[!0-9]b  a與b之間有且只有一個字符, 但不能是數字, 如axb, aab, a-b等
 
 [c1-c2]     匹配c1-c2中的任意單一字符
            a[0-9]b  a與b之間有且只有一個字符,該字符是0-9之間的數字,如a0b, a1b,... ,a9b。
 
 {string1,string2,...}     匹配 sring1 或 string2 (或更多)其一字符串
          a{abc,xyz,123}b    a與b之間只能是abc或xyz或123這三個字符串之一。

須要說明的是:通配符看起來有點象正則表達式語句,可是它與正則表達式不一樣的,不能相互混淆。把通配符理解爲shell特殊代號字符就可。
 

shell元字符

 =     變量名=值,爲變量賦值。注意=左右緊跟變量名和值,中間不要有空格
 
 $     變量值替換,$變量名替換爲shell變量的值;爲避免在文本鏈接時混淆,請使用${變量名};$0...$9 表明shell文件的參數。
 
 >     prog > file 將標準輸出重定向到文件。
 
 >>     prog >> file 將標準輸出追加到文件。
 
 <     prog < file 從文件file中獲取標準輸入
 
 |     管道命令,例:p1 | p2 將p1的標準輸出做爲p2的標準輸入
 
 &     後臺運行命令,最大好處是無需等待命令執行結束,就能夠在同一命令行下繼續輸入命令
 
 ()     在子shell中執行命令
 
 {}     在當前shell中執行命令,或用在變量替換的界定範圍(例如上面的${變量名}用法)。
 
 ;     命令結束符。例如p1;p2表示先執行p1,再執行p2
 
 &&     前一個命令執行成功後,才繼續執行下一個命令。例:p1 && p2 ;若p1執行成功後,才執行p2,反之,不執行p2;
 
 ||     前一個命令執行失敗後,才繼續執行下一個命令。例:p1 || p2 ;若p1執行成功後,不執行p2,反之,才執行p2;
 
 !      否,非,取反
~ home目錄 shell轉義字符 '' 單引號,硬轉義,其內部全部的shell元字符、通配符都會被關掉。注意,硬轉義中不容許出現’(單引號)。 "" 雙引號,軟轉義,其內部只容許出現特定的shell元字符($,`,\):$用於變量值交換、`用於命令替換、\用於轉義單個字符 \ 反斜槓,轉義,去除其後緊跟的元字符或通配符的特殊意義。

  Shell編程淺析 http://www.linuxidc.com/Linux/2014-08/105379.htm linux

  Linux Shell參數替換 http://www.linuxidc.com/Linux/2013-06/85356.htm 正則表達式

  Shell for參數 http://www.linuxidc.com/Linux/2013-07/87335.htm   shell

  Linux/Unix Shell 參數傳遞到SQL腳本 http://www.linuxidc.com/Linux/2013-03/80568.htm 編程

  Shell腳本中參數傳遞方法介紹 http://www.linuxidc.com/Linux/2012-08/69155.htm spa

  Shell腳本傳遞命令行參數 http://www.linuxidc.com/Linux/2012-01/52192.htm命令行

相關文章
相關標籤/搜索