博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux shell基础
阅读量:6915 次
发布时间:2019-06-27

本文共 709 字,大约阅读时间需要 2 分钟。

  bash Shell本身不支持正则表达式,使用正则表达式的是Shell命令和工具,如grep、sed、awk等;

但是,bash Shell可以使用正则表达式中的一些元字符实现通配(Globbing)功能,通配是把一个包含通配符的非具体文件名扩展存储在计算机

服务器或者网络上的一批具有文件名的过程。

  最常用的通配符包括正则表达式元字符: ?  *  [ ]  { }   ^等。这些元字符在通配中的意义与正则表达式中的意义不完全一致;

  "*": 不表示其前面字符的重复, 而是表示任意位的任意字符;

  "?":   表示一个任意字符

  "^":  不代表行首, 而是代表取反;

  "[]":  特殊情况,该符好与正则表达式中相同;

  “{ }”: 表示一组表达式的集合;

 示例:

  [a-h]*.awk  : 表示以a~h范围内以字母开头并以.awk结尾的文件;

  [a-h]*.[^awk]* : 表示a~h范围内以字母开头不以awk结尾的文件;注意:"*"必不可少,否则句号仅匹配到一个字符;

  {[a-h]*.[^awk]* ,  o?.pem}: 表示满足[a-h]*.[^awk]*  或者 o?.pem 的所有文件;

 

说明:通配的结果有计算机搜索大量的文件或者目录进行匹配而输出, 通配对处理能力和内存资源有很高的要求。

  黑客输入包含通配符的文件名故意让服务器重复和连续不断地进行通配可能引起的拒绝服务攻击;因此,大型服务器经常

通过限制服务器执行通配功能的次数、限制一个具体用户每次输入的通配符或者如果通配符太普通,则拒绝执行通配等方式来提高服务器的安全性;

grep用法:

  

 

  

 

转载地址:http://rlncl.baihongyu.com/

你可能感兴趣的文章
hdu 1133 Buy the Ticket (大数+递推)
查看>>
java:Java里数字转字符串前面自动补0的实现
查看>>
获取图片颜色的rgb,以供css设计背景颜色
查看>>
org.tinygroup.validate-验证框架
查看>>
人脸识别中的harr特征提取(转)
查看>>
Windows 8 Metro App开发[6]访问Assets文件夹
查看>>
Cpython的全局解释器锁(GIL)
查看>>
session共享方法
查看>>
ASP.NET AJAX web chat application
查看>>
14--Rails的ActiveView2
查看>>
UVa 496 - Simply Subsets
查看>>
java基础思维导图大全
查看>>
C# 面向对象7 命名空间
查看>>
MySQL单机上多实例安装
查看>>
java8 增强的Iterator遍历集合元素
查看>>
Codeforces Round #566 (Div. 2) B. Plus from Picture
查看>>
Linux命令(23)grep命令的使用
查看>>
自己动手制作一个本地的yum仓库
查看>>
2015年毕业生收到的offer和薪资透露
查看>>
新手老手都离不开八大开发工具
查看>>