本文是对 阮一峰老师命令行通配符教程[1]的学习与记录
通配符早于正则表达式出现,可以看作是原始的正则表达式. 其功能没有正则那么强大灵活,而胜在简单和方便.
- 字符
切回上一个路径/分支
如图:
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-1.png)
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-2.png)
!!
代表上一个命令, 如图:
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-3.png)
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-4.png)
[Linux中“!"的神奇用法](https://www.cnblogs.com/bianchengzhuji/p/10170315.html "Linux中“!"的神奇用法")
在zsh下, !3,表示history中的第3个命令
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-5.png)
?
?字符代表单个字符;
如果想匹配两个字符,就需要??
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-6.png)
*
*代表任意数量的字符(包括空字符)
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-7.png)
想要列出某个文件夹下所有子目录里的.png文件,可使用
ls */*.png
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-8.png)
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-9.png)
[...]
[...]匹配方括号之中的任意一个字符, 如[aeiou]可以匹配五个元音字母
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-10.png)
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-11.png)
[start-end]表示一个连续的范围
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-12.png)
[^...] 和 [!...]
[^...]和[!...]表示匹配不在方括号里面的字符(不包括空字符), 这两种写法等价 (对zsh不适用)
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-13.png)
{...}
{...} 表示匹配大括号里面的所有模式,模式之间使用逗号分隔
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-14.png)
{start..end}
{start..end}会匹配连续范围的字符
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-15.png)
可以组合出复杂的匹配模式
![活用 命令行通配符,后端](https://imgs.yssmx.com/Uploads/2023/09/688407-16.png)
参考资料
命令行通配符教程: http://www.ruanyifeng.com/blog/2018/09/bash-wildcards.html文章来源:https://www.toymoban.com/news/detail-688407.html
本文由 mdnice 多平台发布文章来源地址https://www.toymoban.com/news/detail-688407.html
到了这里,关于活用 命令行通配符的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!