本博客主要详解关于linux中常使用的通配符的知识点,主要分为三个步骤:
- 通配符 *,?和【】【^】的详细解释
- 举例截图说明
- 个人的总结理解
一:通配符 *,?和【】【^】的详细解释
ps:因为通配符【】中可添加很多变量,所以这里我会简单举出几个例子来说明,其他情况请类比
通配符 * |
代表0到无穷多个任意字符 |
通配符 ? |
代表一定有一个任意字符 |
通配符【】 |
代表一定有一个在【】中的字符ps:非任意字符 |
通配符【^】 |
代表一定没有符合【】中的其他任意字符 |
– |
– |
|
|
二:举例截图说明
前言:列出根目录下的所有文件以及目录:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190807130229344.png)
举例说明:
通配符 * :
eg:匹配出第一个数字为1的文件或者目录 ls /1*
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190807130527176.png)
通配符?:
eg:匹配出根目录下目录名为三个字母的目录 ls -d /???
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190807131525989.png)
因为这个条件匹配文件的话,根目录中符合条件的太多了,所以改为了ls -d目录查看
通配符【】:
eg:匹配出根目录中名字为数字(0-9)的目录 ls /【0-9】
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190807132014496.png)
eg:匹配出根目录中名字包含数字的所有目录 ls -d /**[0-9]*
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190807132346618.png)
通配符【^】:
eg:匹配根目录下名字除了数字的其他目录
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190807132654957.png)
其他关于【】的通配符可类比上面提到的例子,明白原理即可。
三:关于这部分个人的总结
刚开始看的时候,看完有点懵,后面发现自己忽略了一个重要的点,那就是“通配符”这个名字,通配:通用匹配,也就是说,通配符也就是相当于一个万能匹配卡一样,会根据不同的条件进行匹配,简而言之,就是匹配。