- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7高级文件处理整理ppt
第六章 高级文件处理 高级文件处理 6.1 正则表达式 6.2 查找、压缩及编解码 6.3 文件共享 6.4 文件系统与磁盘 1、什么是正则表达式 正则表达式 UNIX平台下经典的复杂字符串表示方法 定义了一套由一个或者多个字符串组成的集合 许多UNIX系统程序与应用程序(例如vi与shell本身),都支持使用正则表达式进行字符串查找与替换 注意:不同的程序,对正则表达式的支持程度不同 2、普通字符与分隔符 普通字符 除特殊字符之外的所有一般字符 当特殊字符要作为普通字符时,需要使用引用符号 分隔符 “/”号 用来分隔一个正则表达式字符串 有些程序中可以省略,还有些程序允许使用别的字符作为分隔符 3、特殊字符 特殊字符使得正则表达式可以表示任意复杂的字符串 点号(.) 匹配任意一个字符 有些程序使用”?”来作为匹配任意一个字符的特殊字符 例: /.all/:表示all字符串前面加任意一个字符,例如可以是call、mall、wall… 特殊字符 方括号([]) 集合匹配 匹配括号内任意一个字符 若括号内第一个字符是“^”,则表示否定,即匹配不在括号内的任意一个字符 例 /[bcs]old/:表示第一个字符可以是b、c或者s,即整个字符串可以是bold、cold或者sold /file[1-9].txt/:表示第四个字符可以是1到9的任意一个数字 /^a-zA-Z/:任意一个非字母字符 特殊字符 星号(*) 表示所跟字符重复0次或者多次 如果前面是点号,则可以表示一个任意的字符串 例 /ab*c/ abc, abbbc, abbbbbc /ab.*c/ abxc, ab234rdfc, abc /[a-z A-Z]*/ ? 加号(+) 与星号类似,表示所跟字符重复1次或者多次 特殊字符 “^”与”$”符号 “^”表示在行首匹配一个字符串 “$”表示在行尾匹配一个字符串 称为锚定 例 /^T/ 行的开始是T /^[0-9] 行的开始是一个数字 /:$/ 行的结尾是一个冒号 特殊字符 小括号(“()”) 表示一个组合的字符串作为一个基本的正则表达式单元 例 /(xy)*/ xyxy, xyxyxyxyxy, xy /Oh, (la )+/ Oh, la la la , Oh, la la 4、转义 有的情况下,特殊字符(元字符)需要作为一个普通字符出现在字符串中,此时就需要转义 转义的方法:“\”+所需转义的字符 例: /me\./ me. /you\\me/ you\me /and\/or/ and/or 高级文件处理 6.1 正则表达式 6.2 查找、压缩及编解码 6.3 文件共享 6.4 文件系统与磁盘 1、命令查找 UNIX用户有时候需要 知道文件系统中是否存在某个特定的命令或者文件 知道命令所对应的可执行文件 命令的版本 命令/文件的查找 find命令 whereis命令 where命令 命令查找 whereis命令 命令格式:whereis [options] [commands] 定位指定的命令所对应的可执行文件或源代码 常用选项: -b:仅有哪些信誉好的足球投注网站二进制(可执行)文件 -s:仅有哪些信誉好的足球投注网站源代码 例: [root@authsvr ~]# whereis ftp ftp: /usr/bin/ftp /usr/share/man/man1/ftp.1.gz [root@authsvr ~]# whereis mount mount: /bin/mount /sbin/mount.smb /sbin/mount.smbfs /sbin/mount.cifs /usr/share/man/man2/mount.2.gz /usr/share/man/man8/mount.8.gz [root@authsvr ~]# 2、在文件中查找 用户更多的是需要在文件中查找感兴趣的内容 grep命令:grep [options] pattern [file-list] egrep命令:egrep [options] [string] [file-list] fgrep命令:fgrep [options] [expression] [file-list] 这三个命令都是在文件中对指定的模式/字符串/表达式进行查找 如果file-list为空,则从标准输入取得输入 pattern/string/expression均可以用正则表达式(三个命令的支持程度不同) 常用选项: -i:匹配过程中,忽略大小写 -n:显示匹配行的行号 -l:显示匹配行所在的文件名 在文件中查找 grep命令示例 $grep –n ftp *.log $grep –n [a-z]ftp *.log $grep –n [^a-z]ftp *.log $grep –in
文档评论(0)