Liunx下文本处理

Liunx下文本处理

grep

命令用法

主要用法:

grep pattern_string filename1 filename2...

命令参数:

参数介绍例子
-color=auto标记处匹配到的单词
-E不加这个参数,grep只解释匹配样式中默写特殊字符,此参数可以扩展正则表达式grep -E “[a-z]+” filename
-o只输出匹配到的部分(默认输出含有匹配到字符串所在行)
-v输出不含匹配到的行
-c统计匹配行的数量grep -o “[0-9]”|wc -l (输出匹配的个数)
-n输出行号
-l搜索多个文件并找出在哪一个文件中
-i忽略匹配样式大小写
-e可以匹配多个样式grep -e “pattern-1” “pattern-2”
-f从文件中读取匹配样式grep -f pattern_src filename
-A打印匹配内容之后的 n 行grep -e pattern filename -A n
-B打印匹配内容之前的 n 行
-C打印匹配内容前后 n 行

其他用法

grep pattern_string dirname -R 
参数介绍例子
–inclue指定搜索某些文件
–exclude排除某些文件

Sed

使用语法

sed [option] 'command' input_file

option参数

  • -n使用安静模式,不显示执行的结果
  • -e直接在指令模式进行sed的动作编辑
  • -f从文件读取sed命令
  • -r让sed命令支持扩展正则表达式
  • -i直接修改文件内容

command命令

  • a:在匹配中的行后添加字符串

    • /first/a \add one 对于有first的行后添加 add one
    • /是分割符 \后面试增加的内容
  • c:将匹配的行替换成指定字符串

    • /^ha.*day$/c \replace line 以ha开头day结尾的行替换成replace line
  • d:删除匹配的行

    • /some/d 删除包含some的行
  • i:在匹配中的行前添加字符串

    • 如a\
  • p:print即打印,该命令会打印当前选择的行到屏幕上

  • s:替换,将匹配到的字符串替换成我们想要的字符串

    • s/old/new/g 对于全部的old替换成new,g表示对所有行适用,否则只替换第一行
    • s/(part1)(part2)/\2\1/ 在替换部分\1对应之前的part1,\2对应part2,所以该命令的作用是将part1,part2匹配后调换顺序
  • 1:$,1表示第一行,$表示最后一行

awk

参考资料

awk已经超脱了一个工具了,更像是一门脚本语言。。

awk简单教程

gawk官方文档

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值