; 二、(4)bash的基础特性之:alias命令及文件名通配 | Linux运维部落

二、(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运维部落立场,如若转载,请注明出处:/91065

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1660809109@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班

友情链接:万达娱乐平台  万达娱乐注册  万达开户  万达主管  万达娱乐主管QQ  万达娱乐  万达招商  万达娱乐开户  万达招商QQ