对话 UNIX,第 9 部分: 正则表达式( 五 )
Nathan Good 编著的 Regular Expression Recipes 一书提供了针对许多常见数据处理和过滤问题的有用的解决方案 。如果需要提取邮政编码、电话号码或引用的字符串,请尝试 Nathan 的解决方案 。
在命令行中,可以采用许多方法使用正则表达式 。几乎每个处理文本的命令都支持某种形式的正则表达式 。大多数 Shell 命令语法还或多或少地扩展正则表达式以匹配文件名(尽管操作符的功能可能有所不同) 。
例如,键入 ls [a-c] 以查找名为 a、b 或 c 的文件 。键入 ls [a-c]* 以查找以 a、b 或 c 开头的所有文件名 。此处的 * 在 Shell 中不像 grep 的解释器那样修饰 [a-c],* 被解释为 .* 。? 操作符在 Shell 中也可以工作,但是被解释为 .,即匹配任意单个字符 。
查看您最喜欢的实用工具或 Shell 的文档以确定哪些 regex 操作符受支持,以及操作符可能具有的独特性 。
下课了!
这堂课比往常的时间要长 。但是您现在已了解了正则表达式的基本知识 。出去放松一下 。
在您享受空闲的时候,我将开始编写很快会流行起来的经典歌词“描述 99 个命令的 99 行代码 。
推荐阅读
- 对话 UNIX,第 6 部分: 通过脚本实现操作的自动化
- 提升UNIX中文件系统使用效率
- SCO UNIX基础讲座--第十一讲:TCP/IP 管理
- 什么是第二人格
- 基本配置及操作 SCO UNIX学习宝典
- SCOUNIX基础讲座--第八讲:监视进程管理
- Stty使用技巧一则
- SCO UNIX 5.0.4 DAT磁带机安装
- 初识夏新M350——外观第一感
- UNIX操作系统的版本与标准