第10章 Linux通配符与特殊符号知识应用实践

本文详细介绍了Linux中的通配符和特殊符号,包括“*”、“?”、“[abcd]”、“[a-z]”、“[!abcd]”的用法,并通过实例演示了它们在文件查找中的应用。此外,还讲解了与路径和位置相关的特殊符号如“~”、“-”、“.”、“..”以及不同引号的使用技巧,重定向符号、其他重要特殊符号如分号、井号、管道符、美元符和大括号的实践,并提到了Bash中的逻辑操作符系列。
摘要由CSDN通过智能技术生成

第10章 Linux通配符与特殊符号知识应用实践

10.1 Linux通配符与特殊符号简介

Linux系统的功能非常强大且丰富,几乎键盘上的每个符号在Linux里都有很重要的作用和意义,今天笔者就和大家一起来梳理Linux学习里常见的通配符和特殊字符知识。

10.2 Linux通配符知识与实践

通配符简单地说就是,键盘上的一些特殊字符,可以实现某些特殊的功能,例如,用来模糊搜索系统中的文件。当查找文件时,可以使用通配符中的“*”或“?”字符来代替一个或多个真正的字符,从而更快地找到所需的文件。利用通配符可以在Linux命令行或bash脚本中轻松地匹配或查找所需的文件,以提高工作效率。

下面就为大家讲解一些常见的通配符知识与应用实践。通配符是bash的内置功能,几乎适用于所有的Linux命令。在企业工作中,常用的通配符符号如表10-1所示。

表10-1 通配符符号集合

特别声明:后文在Linux三剑客命令对应的正则表达式功能中还会讲解上述符号的新功能,请读者分开记忆,不要弄混淆了。

10.2.1 通配符之“*”号的作用介绍与实践

在Linux命令行通配符中,“*”号的意思是匹配所有(0到多个)字符,这在查找某一类文件时特别方便,它在命令行中是十分常用的符号。下面来看几个相关的示例。

以下是操作示例数据环境准备:


[root@oldboy ~]# mkdir test
[root@oldboy ~]# cd test/
[root@oldboy test]# touch oldboy.txt oldgirl.txt test.txt
[root@oldboy test]# touch inca.sh
[root@oldboy test]# ls
inca.sh  oldboy.txt  oldgirl.txt  test.txt  #<==3个txt结尾,1个sh结尾,共4个文件。

“*”号的使用示例如下。

1)查看所有结尾为txt的文件,示例代码如下:


[root@oldboy test]# ls *.txt     #<==结尾为“.txt”,开头匹配任意(0或多个)字符。
oldboy.txt  oldgirl.txt  test.txt

2)查看所有结尾为sh的文件,“.sh”的前面可有任意个0。


[root@oldboy test]# ls *.sh
inca.sh

10.2.2 通配符之“?”号的作用介绍与实践

在Linux命令行通配符中,“?”号代表的是任意一个字符(有且只有一个),这个字符在实际工作中运用得不多,读者了解即可。

“?”号的使用示例代码如下:


[root@oldboy test]# ls
inca.sh  oldboy.txt  oldgirl.txt  test.txt
[root@oldboy test]# ls ?.sh     #<==问号仅匹配一个字符,因此,没有找到符合要求的文件。
ls: cannot access ?.sh: No such file or directory
[root@oldboy test]# touch a.sh  #<==再创建一个文件。
[root@oldboy test]# ls ?.sh     #<==重新匹配查找,这次找到了。
a.sh
[root@oldboy test]# ls ????.sh  #<==列出4个????,匹配任意4个字符,就找到了inca.sh了。
inca.sh

10.2.3 通配符之[abcd]的作用介绍与实践

在Linux命令行通配符中,“[]”(中括号)这个符号里面可以加abcd等0到多个字符,表示匹配abcd中的任意一个字符(a、b、c、d中有且只有一个)。

[abcd]的使用示例代码如下:


[root@oldboy test]# ls
a.sh  inca.sh  oldboy.txt  oldgirl.txt  test.txt
[root@oldboy test]# ls [abcd].sh    #<==匹配“.sh”结尾,且前面必须包含a,b,c,d四个字符中的任意一个。
a.sh
[root@oldboy test]# ls in[abc]a.sh  #<==匹配a.sh结尾,开头是in,之后是a,b,c中的任意一个。
inca.sh

10.2.4 通配符之[a-z]的作用介绍与实践

“[]”(中括号)这个符号里面的a-z,表示匹配a到z中的任意一个字符(有且只有一个),a-z要连续,也可以用连续的数字替代,例如,[1-9]表示的就是匹配1到9中的任意一个字符。<

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值