1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux培训-2

sed-范例 # sed -e 1d /etc/profile # sed -e 1,5d /etc/profile 与上一个示例中只使用 d 不同的是,通过加入行号,可以告诉 sed 只对某一或某些特定行进行编辑。在本例中,第一个命令删除输出的第一行,而第二个命令sed 将删除输出的第1到5行。当用逗号将两个行号分开时,命令将应用到从第一个行号开始、到第二个行号结束的范围。 sed-命令与选项 a\ 当前行后面加入一行或者文本 c\ 用新文本替换本行的文本 D 删除一行 D 删除模板块的第一行 i\ 在当前行上面插入文本 H 拷贝模板块的内容到内存缓冲区 H 追加模板块的内容到内存缓冲区 G 获得内存缓冲区内容,并替换当前模板中的文本 G 获得内存缓冲区内容,并追加到当前模版块文本的后面 N 读取下一个输入行,用下一个命令处理新行而不是第一个命令 N 追加下一个输入行到模版块后面,并在二者间插入一个新行,改变当前行的号码 P 打印模板块的行 P 打印模板块的第一行 Q 退出sed R 从文件中读行 ! 否定一条命令,表示后面的命令对不符合匹配规则的行起作用 S 替换字符串 替换 G 行内进行全局替换 P 打印行 W 把行写入一个文件 X 互换模板块和缓冲区中的内容 Y 把一个字符转换成另外一个字符 awk 定义 awk是一种编程语言,用于对文本和数据进行处理和生成报告。 数据可以来自标准输入、文件或进程的输出。它支持用户自定义函数和动态正则表达式,是个强大的编程工具。 它在命令行中使用,但更多是作为脚本来使用。 awk的处理文本和数据的方式和sed是相同的:逐行扫描文件,从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定处理动作,则把匹配的行显示到标准输出 (屏幕),如果没有指定模式,则所有被操作所指定的行都被处理。 awk awk处理的工作与数据库的处理方式有相同之处,就是awk支持对记录和字段的处理,其中对字段的处理是grep和sed不能实现的,这也是awk优于二者的原因之一; awk 记录:awk把每一个以换行符结束的行称为一个记录。awk借用shell的方法,用$1,$2,$3...这样的方式来顺序地表示行(记录)中的不同字段。$0代表整条记录。如 $awk {print $0}test 将输出test文件中的所有记录。 域:记录中每个单词称做“域”,默认情况下以空格或tab分隔。awk可跟踪域的个数,并在内建变量NF中保存该值。如$ awk {print $1,$3} test将打印test文件中第一和第三个以空格分开的列(域)。 域分隔符:内建变量FS保存输入域分隔符的值,默认是空格或tab。我们可以通过-F命令行选项修改FS的值。如$ awk -F: {print $1,$5} test将打印以冒号为分隔符的第一,第五列的内容,也可以同时使用多个域分隔符,这时应该把分隔符写成放到方括号中,如: # awk -F[:\t] {print $1,$3} test //以空格、冒号和tab作为分隔符 输出域的分隔符默认是一个空格,保存在OFS中。如$ awk -F: {print $1,$5} test,$1和$5间的逗号就是OFS的值。 awk-内置函数与变量 变量 描述 $n 当前记录的第n个字段,字段间由FS分隔。 $0 完整的输入记录。 ARGC 命令行参数的数目。 ARGIND 命令行中当前文件的位置(从0开始算)。 ARGV 包含命令行参数的数组。 CONVFMT 数字转换格式(默认值为%.6g) ENVIRON 环境变量关联数组。 ERRNO 最后一个系统错误的描述。 FIELDWIDTHS 字段宽度列表(用空格键分隔)。 FILENAME 当前文件名。 FNR 同NR,但相对于当前文件。 FS 字段分隔符(默认是任何空格)。 IGNORECASE 如果为真,则进行忽略大小写的匹配。 NF 当前记录中的字段数。 NR 当前记录数。 OFMT 数字的输出格式(默认值是%.6g)。 OFS 输出字段分隔符(默认值是一个空格)。 ORS 输出记录分隔符(默认值是一个换行符)。 RLENGTH 由match函数所匹配的字符串的长度。 RS 记录分隔符(默认是一个换行符)。 RSTART 由match函数所匹配的字符串的第一个位置。 SUBSEP 数组下标分隔符(默认值是\034)。 谢 谢 tr [-ds] SET1 [SET2] “-d”删除输入数据中的SET1字符串(用SET2替换);“-s”取代掉重复的字符。 【例】将file中所有的小写变成大写字符: # cat file | tr [a-z] [A-Z] 【例】删除file中的所有

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档