美文网首页
2019-03-20 三剑客之awk 练习题

2019-03-20 三剑客之awk 练习题

作者: Ffvc | 来源:发表于2019-03-20 22:37 被阅读0次

1.在当前系统中打印出所有普通用户的用户名和家目录(/etc/passwd)
答:[root@oldboy/tmp]# cat /etc/passwd|awk -F':' '3>=1000{print1,$NF}' /etc/passwd
oldgirl /bin/bash
test /bin/bash
data /bin/bash

2.显示当前系统中容量使用率大于5%的文件系统名称和挂载点
答:df -h|awk -F "[ %]+" 'NR>1&&5>5{print1,$NF}'

3.为/tmp/grub.conf文件中前三行的行首加#号
答:sed -r '1,3s#^###g' a.txt
awk 'NR<4{print "#"$0}' grub

4.通过notepad++打开,把一下内容输入到test.txt文件中
姓名 区号 电话 三个月捐款数量
Mike Harrington:[510] 548-1278:250:100:175

Christian Dobbins:[408] 538-2358:155:90:201
Susan Dalsass:[206] 654-6279:250:60:50

Archie McNichol:[206] 548-1348:250:100:175
Jody Savage:[206] 548-1278:15:188:150

Guy Quigley:[916] 343-6410:250:100:175
Dan Savage:[406] 298-7744:450:300:275
Nancy McNeil:[206] 548-1278:250:80:75

John Goldenrod:[916] 348-4278:250:100:175

Chet Main:[510] 548-5258:50:95:135

Tom Savage:[408] 926-3456:250:168:200
Elizabeth Stachelin:[916] 440-1763:175:75:300

(1)显示所有电话号码
awk -F"[ :]+" '!/^/{print4}' test.txt

(2)显示Dan的电话号码
awk -F "[ :]+" '1~/Dan/{print4}' test.txt

(3)显示Susan的名字和电话号码
awk -F "[ :]+" 'NR==5{print 1,4}' test.txt
awk -F'[ :]+' '1~/Susan/{print1,2,4}' test.txt

(4)显示所有以D开头的姓
awk -F "[ :]+" '2~/^D/{print2}' test.txt

(5)显示所有区号为916的人名
awk -F "[ :]+" '3~/\[916\]/{print1}' test.txt

(6)显示Mike的捐款.显示每个值时都有以开头.如250100175
awk -F "[: ]+" '1~/Mike/{print ""(NF-2),""(NF-1),""NF}' test.txt awk -F ":" '1~/Mike/{print ""3,""4,""5}' test.txt
awk -F'[ :]+' '/Mike/{print "¥"(NF-2),"¥"(NF-1),"¥"NF}' test.txt sed -rn 's#^M.*:(.*):(.*):(.*).*#\1 \2\3#gp' test.txt

(7)显示姓,其后跟一个逗号和名
awk -F "[: ]+" 'NR>1&&1~/^[A-Z]/{print1","2}' test.txt awk -F'[ :]+' 'NR>1&&!/^/{print 2","1}' test.txt

(8)在Jody开头的行前面添加oldboy
awk -F "[ :]+" '1~/Jody/ {print "oldboy "0}' test.txt
sed -ne '/Jody/p' -e 's#^#oldboy#g' test.txt
在上一行添加oldboy
sed '/Jody/i oldboy' test.txt
awk -F "[ :]+" '1~/Jody/ {print "oldboy\n"0}' test.txt

(9)删除空白行
sed '/^$/d' test.txt

相关文章

  • Linux-grep、sed、awk之awk命令

    参考:Linux三剑客(grep sed awk) 之 awk[https://www.jianshu.com/p...

  • 2019-03-20 三剑客之awk 练习题

    1.在当前系统中打印出所有普通用户的用户名和家目录(/etc/passwd)答:[root@oldboy/tmp]...

  • day 15

    Linux三剑客之awk 1.1、awk语法及参数 功能说明: awk是一种编程语言,可以用来处理数据和生成报...

  • 2019-07-25

    操作系统命令三剑客-awk 一: 三剑客命令awk概述gawk : pattern scanning and pr...

  • 2019-06-19

    1. awk三剑客命令概述 # which awk--------查看awk在哪个目录下 显示: /u...

  • day19-三剑客awk

    ※三剑客之awk 下图是awk的执行过程 1.取行------>NR== 2.取列------->1第一列2第二列...

  • Day19操作系统三剑客命令-awk

    01.三剑客awk命令概念介绍、* 02.三剑客awk命令使用方法 print:输出指定的信息gusb : 替换指...

  • Day 61 三剑客awk

    三剑客 awk 按字母排序(awk) 最后一列和第一列调换顺序

  • day 19三剑客awk

    三剑客命令awk概述:gawk:pattern scanning and processing language ...

  • awk

    awk的简介和功能 awk: Linux 文本处理三剑客:grep、sed和awk。其中grep是一种文本过滤工具...

网友评论

      本文标题:2019-03-20 三剑客之awk 练习题

      本文链接:https://www.haomeiwen.com/subject/bavxvqtx.html