shell编程(十八)通配符和正则表达式

题记: 之前对'二者'傻傻的分不清,总出现'张冠李戴'的现象,对此做一些'深入'的理解

一    shell通配符

①  基本概念

1)glob 在正则出现'之前'就有了,主要用于匹配'目录'或'文件'路径,并'处理'各种后缀的文件('通称')

理解: glob'整合到'shell中了,形成'shell通配符'

2)重点:shell 通配符 'glob 模式'通常用来匹配'目录'以及'文件',而'不是文本内容'!!!

②  常见通配符

[characters]	  字符集合的任意'一个字符'

{str1,str2,str3}  匹配 'srt1' 或者 'srt2' 或者'更多'字符串;也可以是'集合'-->{1..9}

强调: Glob'不匹配'任何'隐藏'文件或文件夹

③  专用字符集

[::]    --> POSIX风格的'专用'字符集 -->'或'的匹配

[[::]] --> 字符集中'单个字符'的匹配

④  案例简单讲解

docs/**/*.md  -->匹配 'docs 目录下'及'子目录下'所有 markdown 文件

⑤  glob应用场景

git的.gitignore忽略文件

前端构建工具gulp

FileBeat

⑤  shell元字符

使用'通配符'时,如果'没有进行转义'可能就会'被辨识为元字符'

元字符:  '特殊'含义

⑥  与shell通配符相关的linux命令

1)通配符是shell'自带'的用于'匹配文件名'的工具,多用在'文件名'上

2)查找'find'、列出'ls、tree'、复制'cp'、移动'mv'、删除'rm'、创建'mkdir、touch'、打开文件'vi/vim、gedit'、文件大小'du' 等等

小结: 理论上'跟文件相关'的都可以'使用通配符'

⑦  小结 

⑧  注意事项

二    正则表达式

备注: 本'章节'会粗略的讲解,主要是对比二者的'差异'

细节: 正则表达式则需要'特定命令的支持'才可以使用,如:'grep'、'sed'和'awk'(号称Linux'三剑客')、vi/'vim'、'perl'等,这些都是处理文本的工具

三  差异性对比

①  操作对象不同

1)通配符是用来'匹配文件或目录'

2)正则表达式是用来匹配'字符串'的 --> 处理'文本内容'

②  符号

1)"双引号"内一般为'通配符'     -->是'shell本身'提取处理

2)'单引号'内一般为'正则表达式' -->shell会将其中的数据'传递给'其它'命令'处理

四  参考博客

Linux通配符与正则表达式的区别与详解

Glob模式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值