linxu通配符

通配符 globbing

globbing:文件名通配(整体文件名匹配,而非部分)

匹配模式:元字符

*:匹配任意长度的任意字符

ab*:ab开头的单词

*ab*:包含ab的单词

*ab:ab结尾的单词

*a*b*:包含a、b的单词

?:匹配任意单个字符

ab?:ab开头的三个字符的单词

??ab:ab结尾四个字符的单词

a?b:a开头、b结尾三个字符的单词

a?b?:a+任意字符+b+任意字符的四个字母组成的单词

[]:匹配指定范围内的任意单个字符

当LANG=C时,[a-z]其实是a,b,c…z,所有小写字母

当LANG=utf8时,[a-z]其实是a,A,b,B,c,C…y,Y,z,包括除z意外的所有字母

[a-Z]这个集合本身代表所有字母,包括大小写。

有几种特殊格式:(当LANG=utf8)
    [a-z]:匹配字母,包括除Z意外的所有字母
    [A-Z]:匹配单个大写字母
    [0-9]:匹配数字
    [a-z0-9]:匹配任意字母或数字

    [[:upper:]]:所有大写字母
    [[:lower:]]:所有小写字母
    [[:alpha:]]:所有字母
    [[:digit:]]:所有数字
    [[:alnum:]]:所有的字母和数字
    [[:space:]]:所有空白字符
    [[:punct:]]:所有标点符号

[^]:匹配指定范围外的任意单个字符

[^]:匹配指定范围外的任意单个字符
[^[:upper:]] :非大写字母
[^0-9]:非数字
[^[:alnum:]]:非字母数字

实例

  • 显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
    ls -d /var/l*[[:digit:]]*[[:lower:]]
    
  • 显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
    ls -d /etc/[[:digit:]]*[^[:digit:]]
    
  • 显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
    ls -d /etc/[^[:alpha:]][[:alpha:]]*
    
  • 在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
    touch /tmp/tfile-$(date  +%Y-%m-%d-%H-%M-%S)
    
  • 复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中
    root@localhost var]# cp -r /etc/p*[^[:digit:]] /tmp/mytest1
    
  • 复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
    cp -r /etc/*.d /tmp/mytest2/
    
  • 复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
    cp -r /etc/[mn]*.conf /tmp/mytest3

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/92058

(0)
eighteenxueighteenxu
上一篇 2018-03-11 16:15
下一篇 2018-03-11 17:13

相关推荐

  • Centos系统启动概括流程

    §·Centos系统启动概括流程 系统启动流程: PC (OS Llinux) POST(开机)–>BIOS–>MBR(bootloader .446字节)—>kernel–>/sbin/init(/etc/inittab)(用户空间的管理进程)   备注: POST :加电自…

    Linux干货 2016-09-08
  • 编译安装Apache

    实验环境:CentOS 6 安装包版本:httpd-2.2.29.tar.bz2 一、安装前准备     (1)、获取httpd-2.2.29.tar.bz2安装包     (2)、准备开发工具,安装相应的包组 yum groupinstall -y&nbsp…

    Linux干货 2016-08-24
  • Linux LVM介绍及管理

    什么是LVM? LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,用来提高磁盘分区管理的灵活性。系统管理员可以通过LVM轻松的管理磁盘分区,如:将若干个磁盘分区或物理磁盘连接为一个整块的卷组 (volumegroup),形成一个存储池。管理员可以…

    Linux干货 2016-08-30
  • 两张盘合并做yum源

    第一步 先把两张光盘都连接到系统中 连接上iso文件后重启电脑 这时桌面会显示已将连接上的iso文件   然后创建两个文件夹分别挂载这两个光盘   mkdir centos6.9-{1,2} 创建两个文件夹 df 查看系统硬盘   然后把两个光盘分别挂载到文件中 mount -o ro,loop /dev/sr0 centos6…

    2017-07-12
  • Week 1–Linux基础2

    四. Linux系统命令使用格式:  但首先,在linux中我们要知道linux系统中基本的命令格式如下: 命令字 【命令选项】 【命令参数】   Command 【option】 【arguments】 在这里主要介绍这几个命令的使用格式(Ifconfig,echo, tty, startx, export, pwd, history, shut…

    Linux干货 2016-12-05
  • Python语法基础之if while for常见的简单算法

    格式要符合语法要求

    2017-09-14