shell文本处理
2016-04-01 15:36
645 查看
1、截取文本中摸个字段出现的次数
文本如下:
cat t:
get idea 9223372036851983171 first extend winfo failed, qid=(6ae3e9d800000000)
get idea 9223372036851985083 first extend winfo failed, qid=(622309d800000000)
获取idea和firstr之间的那个字段出现的次数:
结果:
8 9223372036851994950
1 9223372036851994954
8 9223372036851994962
1 9223372036851994966
21 9223372036851994970
2 9223372036851994974
20 9223372036851994978
12 9223372036851994982
6 9223372036851994986
16 9223372036851994990
39 9223372036851994994
....
命令解释
s: 表示替换命令
\(.*\) idea: first前的内容
idea\(.*\) first:表示idea 和 first 之间的内容
first \(.*\):表示first后的内容
\2: 表示第2个匹配的内容
匹配的内容,可以用\1,\2等进行引用,第n个匹配内的内容,就用\n引用。
这个命令的意思是:
用\2代表的第二个匹配的内容去替换整个字符串,这样就得到了我们所需要的子字符串了。
文本如下:
cat t:
get idea 9223372036851983171 first extend winfo failed, qid=(6ae3e9d800000000)
get idea 9223372036851985083 first extend winfo failed, qid=(622309d800000000)
获取idea和firstr之间的那个字段出现的次数:
cat t| sed -n 's/\(.*\)idea \(.*\) first\(.*\)/\2/p'|sort |uniq -c
结果:
8 9223372036851994950
1 9223372036851994954
8 9223372036851994962
1 9223372036851994966
21 9223372036851994970
2 9223372036851994974
20 9223372036851994978
12 9223372036851994982
6 9223372036851994986
16 9223372036851994990
39 9223372036851994994
....
命令解释
s: 表示替换命令
\(.*\) idea: first前的内容
idea\(.*\) first:表示idea 和 first 之间的内容
first \(.*\):表示first后的内容
\2: 表示第2个匹配的内容
匹配的内容,可以用\1,\2等进行引用,第n个匹配内的内容,就用\n引用。
这个命令的意思是:
用\2代表的第二个匹配的内容去替换整个字符串,这样就得到了我们所需要的子字符串了。
相关文章推荐
- adb shell中设置android系统内部环境变量!
- shell脚本中的if参数
- SSH Secure Shell Client远程登录Linux
- Linux用shell脚本监控网站运行状态并发告警邮件
- 使用shell脚本往数据库批量插入数据和执行sql
- [转载]Linux login、non-login shell以及su,sudo相关概念
- [转载]Linux中profile、bashrc、bash_profile之间的区别和联系
- hadoop Shell命令详解
- shell之wget
- mac 更改 php 版本 和-bash 命令失效的解决方法
- shell 获取当前ip
- 客户端putty, xshell连接linux中vim的小键盘问题
- Adb命令问题
- shell之traceroute命令
- 通过JAVA在命令行(如控制台)运行Shell指令
- 在WinDBG中, 使用.shell命令来搜索字符串
- Linux shell 之 提取文件名和目录名的一些方法
- xshell 连接到虚拟机
- 批量远程执行shell命令工具
- 怎么获得webshell asp/PHP环境搭建 2016.03.31回顾