RHEL命令行的通配符

简介: 通用的匹配信息的符号

通配符就是通用的匹配信息的符号,比如星号(*)代表匹配零个或多个字符, 问号(?)代表匹配单个字符,中括号内加上数字[0-9]代表匹配 0~9 之间的单个数字的字符, 而中括号内加上字母[abc]则是代表匹配 a、b、c 三个字符中的任意一个字符。

image.png

匹配所有在/dev 目录中且以 nvme 开头的文件:

[root@rhel-8 ~]# ls -l /dev/nvme*crw-------. 1 root root 243, 0 Nov 1410:37 /dev/nvme0
brw-rw----. 1 root disk 259, 0 Nov 1410:37 /dev/nvme0n1
brw-rw----. 1 root disk 259, 1 Nov 1410:37 /dev/nvme0n1p1
brw-rw----. 1 root disk 259, 2 Nov 1410:37 /dev/nvme0n1p2

如果只想查看文件名以 sda 开头,但是后面还紧跟其他某一个字符的文件的相关信息, 这时就需要用到问号来进行通配了:

[root@rhel-8 ~]# ls -l /dev/nvme?crw-------. 1 root root 243, 0 Nov 1410:37 /dev/nvme0

除了使用[0-9]来匹配 0~9 之间的单个数字,也可以用[012]这样的方式仅匹配这 3 个指 定数字中的一个;若没有匹配到数字 1 或 3 或 5,则不会显示出来:

[root@rhel-8 ~]# ls -l /dev/nvme[0-9]crw-------. 1 root root 243, 0 Nov 1410:37 /dev/nvme0
[root@rhel-8 ~]# ls -l /dev/nvme[012]crw-------. 1 root root 243, 0 Nov 1410:37 /dev/nvme0
[root@rhel-8 ~]# ls -l /dev/nvme[135]ls: cannot access '/dev/nvme[135]': No such file or directory

通配符不一定非要放到最后面,也可以放到前面。比如,可以使用下述命令来搜索/etc/ 目录中所有以.conf 结尾的配置文件有哪些:

[root@rhel-8 ~]# ls -l /etc/*.conf-rw-r--r--. 1 root root       55 Feb  12019 /etc/asound.conf
-rw-r--r--. 1 root root    25696 Dec 122018 /etc/brltty.conf
-rw-r--r--. 1 root root     1083 Apr  42018 /etc/chrony.conf
...

通配符不仅可用于搜索文件或代替被通配的字符,还可以与创建文件的命令相结合, 一口气创建出好多个文件。不过在创建多个文件时,需要使用大括号,并且字段之间用逗 号间隔:

[root@rhel-8 ~]# touch {aa,bb,cc}.conf[root@rhel-8 ~]# ls -l *.conf-rw-r--r--. 1 root root 0 Nov 1419:40 aa.conf
-rw-r--r--. 1 root root 0 Nov 1419:40 bb.conf
-rw-r--r--. 1 root root 0 Nov 1419:40 cc.conf

通配符还可以输出一些指定的信息:

[root@rhel-8 ~]# echo file{1,2,3,4,5}file1 file2 file3 file4 file5


相关文章
|
6月前
|
Linux
如何在 Linux 中创建带有特殊字符的文件?
如何在 Linux 中创建带有特殊字符的文件?
106 0
|
4月前
|
安全 Linux
Linux通配符及其在文件搜索和管理中的应用
Linux通配符及其在文件搜索和管理中的应用
|
4月前
|
Java Linux
Linux通配符的使用方法
Linux通配符的使用方法
|
5月前
|
Linux Shell
Linux通配符总结
Linux通配符总结
|
6月前
|
存储 算法 Shell
【Shell 命令集合 文档编辑】Linux 正则表达式匹配 egrep命令使用教程
【Shell 命令集合 文档编辑】Linux 正则表达式匹配 egrep命令使用教程
84 0
|
Linux
centos7系统命令补全操作
centos7系统命令补全操作
180 0
|
Linux
centos7系统命令补全操作
centos7系统命令补全操作
290 0
|
Shell Linux Perl
LINUX SHELL中使用sed匹配某一行并替换这一行的内容
LINUX SHELL中使用sed匹配某一行并替换这一行的内容
624 0
|
JavaScript Linux Perl
Linux sed替换(转载)
1. sed替换的基本语法为: sed 's/原字符串/替换字符串/' 单引号里面,s表示替换,三根斜线中间是替换的样式,特殊字符需要使用反斜线”\”进行转义。
1188 0
|
Linux
Linux通配符的使用详解
一、简介 一般生产环境的服务器默认都是不安装图形化界面的,习惯了在命令行环境下工作是,大家会发现:命令行操作效率比图形化界面效率高很多。
982 0