二、(4)bash的基礎特性之:alias命令及文件名通配

alias命令

在bash中,允許用戶使用和創建命令的別名

  • 用法:
  1. 查看:可以使用alias命令來獲取當前可用的命令別名:
    搜狗截圖20180112121716
    如第一行:alias cp=’cp -i’,將cp -i命令定義別名為:cp
  2. 創建:上圖中,alias所展示的也是創建別名的方法,即:alias NAME=’COMMAND’
    搜狗截圖20180112122433
    注意:圖中舉例將ls -l命令創建別名為ls,此時原命令ls被隱藏,如果要運行原命令,則需使用\COMMAND
  3. 另外值得注意點是,此處定義的別名僅對當前shell進程有效
    搜狗截圖20180112123802
  4. 撤銷別名:unalias NAME
    搜狗截圖20180112124307

文件名通配

當在使用命令行時,shell提供了一套完整的字符串模式匹配規則,或者稱之為元字符
當shell遇到上述字符時,就會把它們當作特殊字符來處理,而非文件名中的普通字符。這樣就可以用它們來匹配相應的文件名。

  • 用法:
  1. *:匹配任意長度的任意字符(可為0個)
  2. ?:匹配任意單個字符(不可為0個)
  3. []:匹配指定范圍內的任意單個字符,以下是幾種常用特殊格式:
    [a-z],[A-Z],[0-9],[a-z0-9],注意:匹配不區分大小寫,下文將舉例說明
    [[:upper:]]:所有大寫字母
    [[:lower:]]:所有小寫字母
    [[:alpha:]]:所有字母
    [[:alnum:]]:所有的字母和數字
    [[:punct:]]:所有標點符號
  4. [^]:匹配指定范圍外的任意單個字符,如:
    [^0-9]
    [^[:upper:]]
    [^[:alnum:]]
  • 示例:
  1. 顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其他字符)的文件或目錄:
    搜狗截圖20180112193942
  2. 顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄:
    搜狗截圖20180112194721
  3. 顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其他任意長度任意字符的文件或目錄:
    搜狗截圖20180112200108
    值得注意點是,此處的[a-z][A-Z]的匹配效果不區分大小寫,但會出現如下情況:
    搜狗截圖20180112200421
    此處的[^A-Z]所表示的是除大寫字母A到Z以外的任意字符,需要特別注意
  4. 復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中:
    搜狗截圖20180112202928
  5. 復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中:
    搜狗截圖20180112203310
  6. 復制/etc目錄下所有以lmn開頭,以.conf結尾的文件至/tmp/mytest3目錄中:
    搜狗截圖20180112203840

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.npownk.tw/91065

聯系我們

400-080-6560

在線咨詢

工作時間:周一至周五,9:30-18:30,節假日同時也值班

QR code
安徽十一选五分布走势