常见通配符
| 符号 | 作用 |
|---|---|
| * | 匹配任意,0或多个字符,字符串 |
| ? | 匹配任意1个字符,有且只有一个字符 |
| 符号集合 | 匹配一堆字符或文本 |
| [abcd] | 匹配abcd中任意一个字符,abcd也可以是不连续的任意字符 |
| [a-z] | 匹配a到z之间任意一个字符,要求连续字符,也可以连续数字,匹配[1-9] |
| [!abcd] | 不匹配括号中任意一个字符,也可以书写[!a-d],同于写法 |
| [^abcd] | 同上,!可以换成^ |
特殊通配符
| 符号 | 作用 |
|---|---|
| [[:upper:]] | 所有大写字母 |
| [[:lower:]] | 所有小写字母 |
| [[:alpha:]] | 所有字母 |
| [[:digit:]] | 所有数字 |
| [[:alnum:]] | 所有的字母和数字 |
| [[:space:]] | 所有的空白字符 |
| [[:punct:]] | 所有标点符号 |
案例
1.找出根目录下最大文件夹深度是3,且所有以l开头的文件,且以小写字母结尾,中间出现任意一个字符的文本文件
[root@timy-test-k8s01 ~]# find / -maxdepth 3 -type f -name "l?[a-z]" /usr/bin/ldd /usr/bin/lua /usr/sbin/lvm /usr/sbin/lid2.找出/tmp下以任意一个数字开头,且以非数字结尾的文件
[root@timy-test-k8s01 ~]# find /tmp -type f -name "[0-9][!0-9]" #未找到该类型的文本文件3.显示/tmp下以非字母开头,后面跟着一个字母以及其他任意长度的字符的文件
[root@timy-test-k8s01 ~]# find /tmp/ -type f -name "[^a-zA-Z][a-zA-Z]*"
Linux特殊符号
路径相关
符号 作用 ~ 当前登录用户的家目录 - 上一次工作路径 . 当前工作路径,或隐藏文件 .. 上一级目录 Linux中,单引号,双引号可以用于表示字符串
名称 解释 单引号'' 所见即所得,强引用,单引号中内容会原样输出 双引号" " 弱引用,能够识别各种特殊符号、变量、转义符等,解析后再输出结果 没有引号 一般连续字符串、数字、路径可以省略双引号,遇见特殊字符,空格、变量等,必须加上双引号 反引号`` 常用于引用命令结果,同于$(命令) 反引号案例
用反引号进行案例解析
[root@timy-test-k8s01 ~]# date +%F 2022-05-13 [root@timy-test-k8s01 ~]# touch `date +%F`.txt #创建文件,名字是当前时间格式 [root@timy-test-k8s01 ~]# ls 2022-05-13.txt anaconda-ks.cfg Desktop test test.txt [root@timy-test-k8s01 ~]# touch $(date +%F) #反引号,等同于$(命令) [root@timy-test-k8s01 ~]# ls 2022-05-13 2022-05-13.txt anaconda-ks.cfg Desktop test test.txt[root@timy-test-k8s01 ~]# echo date date [root@timy-test-k8s01 ~]# echo `date` #反引号中的命令被执行 Fri May 13 02:13:26 EDT 2022[root@timy-test-k8s01 ~]# which cat /usr/bin/cat [root@timy-test-k8s01 ~]# ls -l `which cat` #反引号中的命令被执行 -rwxr-xr-x. 1 root root 54080 Aug 20 2019 /usr/bin/cat



