北大,awk 命令基础练习
Red Hat Enterprise Linux Version 5.3 Get the latest news about the world‘s Open Source Leader Red Hat Network Manage your system dffectively through Red Hat Network Global Learning Services You‘ve got Red Hat Enterprise Linux,now get the skills check out Red Hat‘s training courses and industry-acclaimed 2009082301 #This is a test456 line space test123 line234 1.编写一个awk脚本,功能是打印所有行 2.编写一个awk脚本,打印文件第八行 3.用awk命令打印文件所有行的第一个字段 4.打印输入行总数 5.打印每行字段数 6.打印最后一行 7.打印字段数多于4个的行 8.打印文件所有字段的总数 9.打印3-8行 10.在文件顶部加上标题“Document” 11.隔行删除(1,3,5,...行删除) 12.查找system替换成***SYSTEM*** 14.打印一列数字的总和。
答案:
1.编写一个awk脚本,功能是打印所有行 awk ‘{print $0}‘ a.txt 2.编写一个awk脚本,打印输入文件第八行 awk ‘{if(NR==8){print $0}}‘ a.txt 3.用awk命令打印文件所有行的第一个字段 awk ‘{print $1}‘ a.txt 4.打印输入行总数 [[email protected] test]# awk ‘END{print NR}‘ a.txt 5.打印每行字段数 awk ‘{print NF}‘ a.txt 6.打印最后一行 awk ‘{tail=$0}END{print tail}‘ a.txt awk ‘END{print $0}‘ a.txt 7.打印字段数多于4个的行 awk ‘{if(NR>4){print $0}}‘ a.txt awk ‘NR>4‘ a.txt 8.打印文件所有字段的总数 awk ‘BEGIN{n=0}{n=n+NF}END{print n}‘ a.txt 9.打印3-8行 awk ‘NR>=3 && NR<=8‘ 1.txt awk ‘{ if(NR>=3 && NR<=8){print} }‘ a.txt 10.在文件顶部加上标题“Document” awk ‘BEGIN{print "Document"}{print}‘ a.txt 11.隔行删除(1,3,5,...行删除) awk ‘{ if(NR%2 == 0){print $0} }‘ a.txt 12.查找system替换成***SYSTEM*** awk ‘{gsub(/system/,"****SYSTEM****",$0); print $0}‘ a.txt 13.取ifconfig eth0 的IP ifconfig eth0 | awk ‘/inet /{print $2,$NF}‘ | awk -F"[ :]" ‘{print $2"/"$NF}‘ 14.打印一列数字的总和。 seq 100 | awk ‘{sum+=$1}END{print sum}‘
时间: 2024-10-10 04:40:52