Gopherx
发布于 2024-11-27 / 7 阅读
0
0

Linux通配符

通配符含义例子
*匹配零个或多个字符*.txt 匹配所有扩展名为 .txt 的文件
?匹配一个任意字符file?.txt 匹配 file1.txtfileA.txt 等文件
[]匹配指定范围内的一个字符file[1-3].txt 匹配 file1.txtfile2.txtfile3.txt
[^]匹配不在指定范围内的一个字符file[^1].txt 匹配 file2.txtfileA.txt 等(不匹配 file1.txt
{}匹配一组指定的字符串中的任意一个file{1,2,3}.txt 匹配 file1.txtfile2.txtfile3.txt
\转义字符,用于取消特殊字符的特殊含义\* 匹配星号字符 *,而不是任意字符的通配符
~代表当前用户的家目录(也可以表示其他用户的家目录)~ 表示 /home/username(当前用户的家目录)
**在某些工具(如 bashzsh)中,表示匹配零个或多个目录**/*.txt 匹配所有目录及其子目录下的 .txt 文件

说明:

  • * 匹配零个或多个字符,可以匹配任何类型的文件。
  • ? 只能匹配一个字符,非常适合用来查找一个特定位置的字符。
  • [] 用于匹配范围或指定字符集合中的字符,[^] 匹配不在指定范围内的字符。
  • {} 用于指定多个选项,匹配其中任意一个。
  • \ 用于对特殊字符进行转义,取消它的通配符功能。
  • ~ 表示当前用户的家目录,常用于路径操作。
  • ** 只有在支持该语法的工具(如 bash)中才有效,用于递归匹配多级目录下的文件。

评论