网站首页 > 博客文章 正文
grep
使用正则表示式把匹配的行提取出来。
$ grep [-acinv] [--color=auto] 搜寻字符串 filename
-a : 将 binary 文件以 text 文件的方式进行搜寻
-c : 计算找到个数
-i : 忽略大小写
-n : 输出行号
-v : 反向选择,亦即显示出没有 搜寻字符串 内容的那一行
--color=auto :找到的关键字加颜色显示
范例:把含有 the 字符串的行提取出来(注意默认会有 —color=auto 选项,因此以下内容在 Linux 中有颜色显示 the 字符串)
$ grep -n 'the' regular_express.txt
8:I can't finish the test.
12:the symbol '*' is represented as start.
15:You are the best is mean you are the no. 1.
16:The world Happy is the same with "glad".
18:google is the best tools for search keyword
因为 { 与 } 的符号在 shell 是有特殊意义的,因此必须要使用转义字符进行转义。
$ grep -n 'go\{2,5\}g' regular_express.txt
printf
用于格式化输出。
它不属于管道命令,在给 printf 传数据时需要使用 $( ) 形式。
$ printf '%10s %5i %5i %5i %8.2f \n' $(cat printf.txt)
DmTsai 80 60 92 77.33
VBird 75 55 80 70.00
Ken 60 90 70 73.33
awk
可以根据字段的某些条件进行匹配,例如匹配字段小于某个值的那一行数据。
$ awk ' 条件类型 1 {动作 1} 条件类型 2 {动作 2} ...' filename
awk 每次处理一行,处理的最小单位是字段,每个字段的命名方式为:\$n,n 为字段号,从 1 开始,\$0 表示一整行。
范例 1:取出登录用户的用户名和 ip
$ last -n 5
dmtsai pts/0 192.168.1.100 Tue Jul 14 17:32 still logged in
dmtsai pts/0 192.168.1.100 Thu Jul 9 23:36 - 02:58 (03:22)
dmtsai pts/0 192.168.1.100 Thu Jul 9 17:23 - 23:36 (06:12)
dmtsai pts/0 192.168.1.100 Thu Jul 9 08:02 - 08:17 (00:14)
dmtsai tty1 Fri May 29 11:55 - 12:11 (00:15)
$ last -n 5 | awk '{print $1 "\t" $3}
awk 变量:
变量名称 | 代表意义 |
NF | 每一行拥有的字段总数 |
NR | 目前所处理的是第几行数据 |
FS | 目前的分隔字符,默认是空格键 |
范例 2:输出正在处理的行号,并显示每一行有多少字段
$ last -n 5 | awk '{print $1 "\t lines: " NR "\t columns: " NF}'
dmtsai lines: 1 columns: 10
dmtsai lines: 2 columns: 10
dmtsai lines: 3 columns: 10
dmtsai lines: 4 columns: 10
dmtsai lines: 5 columns: 9
可以使用条件,其中等于使用 ==。
范例 3:/etc/passwd 文件第三个字段为 UID,对 UID 小于 10 的数据进行处理。
$ cat /etc/passwd | awk 'BEGIN {FS=":"} $3 < 10 {print $1 "\t " $3}'
root 0
bin 1
daemon 2
- 上一篇: Linux - 提取指令
- 下一篇: 可靠性分析计算程序软件(FastBird V1.0)发布
猜你喜欢
- 2024-11-20 干货 | 这 3 个超经典的Linux实战项目,让你分分钟入门Linux系统
- 2024-11-20 Google移动开发平台Flutter发布 iOS和Android开发者神器
- 2024-11-20 可靠性分析计算程序软件(FastBird V1.0)发布
- 2024-11-20 Linux - 提取指令
- 2024-11-20 Linux vi/vim
- 2024-11-20 十一假期玩什么:一些又萌、又扯、又糙、又轻松的游戏推荐
- 2024-11-20 Linux高级路由教程
- 2024-11-20 Linux切换目录(cd命令)
- 2024-11-20 谁是2020年最强Python库?年度Top10出炉
- 2024-11-20 教你玩转Linux—磁盘检验、挂载与卸除
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)