带你认识Linux中的通配符

所谓的通配是指:显示以指定条件的文件,英文名为glob。通配符是一种特殊语句,用来模糊搜索文件。当查找文件夹时,可以使用它来代替一个或多个真正字符它使得文件管理更加快速,便捷,大大提升了工作效率。

timg_image&quality=80&size=b9999_10000&sec=1522670106118&di=cb1856eabc99620a3c33

通配符是一种特殊语句,用来模糊搜索文件。当查找文件夹时,可以使用它来代替一个或多个真正字符它使得文件管理更加快速,便捷,大大提升了工作效率。

常用的通配符有  * 、? 、[]  等(可通过man 7 glob的帮助文档来查看所有通配符)

1. * 表示任意长度的任意字符:

例:ls -d /etc/a*     显示/etc目录下所有以a开头的文件与目录:

星号

2. ? 表示任意单个字符:

例:ls  a?b  显示当前目录下所有以a开头中间有一个字符b结尾的文件,a10b中间夹2个字符,因此不显示:

问号

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

例:ls -d /etc/[mn]*  显示/etc目录下所有以m开头或者n开头的文件和目录:

3

[a-Z]:表示任意一个单个字母:

例:ls -d*[a-Z]  显示目录下所有以字母开头的文件和目录

字母 (2)

[0-9]:表示任意单个数字:

例:ls -d f[0-9]  显示当前目录下所有以f开头后跟任意一个数字的文件和目录,f16因含两个数字,则不予显示:

数字

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

例:ls  -d   [^a]*   显示当前目录下所有不是a开头的文件和目录:

除

注意:对字符集或数字集取反时,托字符^加在括号内;如:[^0-9],[^[:alpha:]];

5.常用的字符集表示方法:

[:alpha:]表示所有的字母(不区分大小写)

例:ls -d *[[:alpha:]] 显示当前目录下所有以字母结尾(不区分大小写)的文件和目录

字母字符集

[:digit:]表示任意单个数字,效果同[0-9]

例:ls f[[:digit:]] 显示当前目录下所有f开头,单个数字结尾的文件,值得注意的是:[:digit:]只代表单个数字,f16文件因为f后跟两个数字,则不予显示。

数字字符集

[:lower:]表示任意单个小写字母

例:ls -d [[:lower:]]*[[:lower:]]

显示所有当前目录下以小字字母开头且以小写字母结尾的文件和目录:

小写字母字符集

[:upper:]表示任意单个大写字母

例:ls -d a*[[:upper:]] 显示当前目录下 所有以a开头并以一个大写字母结尾的文件和目录:

大写字母字符集

[:alnum:]表示任意单个字母或数字

例:ls -d [[:alnum:]]显示当前目录下 所有以字母或数字结尾的文件和目录:

T2}H17KY`(`(X%SPA7ORCX5

到此为止,常用的通配符使用方法就介绍到这里了,小伙伴们以后查找文件是不是更容易了呢?

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

(6)
wangxczwangxcz
上一篇 2018-04-01 19:28
下一篇 2018-04-01 19:28

相关推荐

  • Linux系统中RAID及LVM管理

    Linux系统中如何提高磁盘的读写性能,如何实现磁盘冗余,当磁盘快被占满时,又如何弹性拓展磁盘容量,RAID及LVM技术可以帮你轻松解决。

    2018-04-26
  • 总结_系统初始设置

    启动 自动联网 gedit /etc/sysconfig/network-scripts/ifcfg-ens33 /*图形界面 gedit*/ ONBOOT=yes 自动登录 nano /etc/gdm/custom.conf /*字符界面 nano*/ [daemon] AutomaticLoginEnable=Ture AutomaticLogin=XX…

    Linux笔记 2018-03-30
  • cobbler自动化安装系统相关实验

    cobbler用来快速建立 Linux 网络安装环境,基于PXE的二次封装,将多种安装参数封装到一个菜单,相较于PXE更加方便,自动化

    2018-05-26
  • ansible进阶小技巧

    用ansible写playbook的朋友可能会发现,当配置工作很多时,如果在中间过程出错了,修改后想重新执行,前面的一大堆步骤让人感觉很烦躁。虽然提供了“retry”文件,但是却只是根据host来判断重新执行,仍然不够方便;又或者,中间的某些步骤特别耗时,比如下载一个很大的数据包,每次执行特别浪费时间,想要特别的跳过。怎么办?我猜你就是把不需要的部分给注释掉…

    Linux笔记 2018-06-03
  • grep命令 | 正则表达式

    date -s “2018-4-7”

    2018-04-07
  • 创建空文件和刷新时间

    复制文件和目录cp:    

    Linux笔记 2018-04-01