博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux 命令详解(二)awk 命令
阅读量:7096 次
发布时间:2019-06-28

本文共 1333 字,大约阅读时间需要 4 分钟。

AWK是一种处理文本文件的语言,是一个强大的文本分析工具。之所以叫AWK是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的Family Name的首字符。

语法:

awk [选项参数] 'script' var=value file(s)或awk [选项参数] -f scriptfile var=value file(s)

基本用法:

用法一:

新建一个log.txt 文件

2 this is a test3 Are you like awkThis's a test10 There are orange,apple,mongo

命令(格式):

awk '{[pattern] action}' {filenames}   # 行匹配语句 awk '' 只能用单引号

(1)每行按空格或TAB分割,输出文本中的1、4项

$ awk '{print $1,$4}' log.txt --------------------------------------------- 2 a 3 like This's 10 orange,apple,mongo

(2) 格式化输出

$ awk '{printf "%-8s %-10s\n",$1,$4}' log.txt --------------------------------------------- 2        a 3        like This's 10       orange,apple,mongo

 用法二:

awk -F  #-F相当于内置变量FS, 指定分割字符

 使用","分割

$  awk -F, '{print $1,$2}'   log.txt --------------------------------------------- 2 this is a test 3 Are you like awk This's a test 10 There are orange apple
使用多个分隔符.先使用空格分割,然后对分割结果再使用","分割
$ awk -F '[ ,]'  '{print $1,$2,$5}'   log.txt --------------------------------------------- 2 this test 3 Are awk This's a 10 There apple

 用法三:

awk -v  # 设置变量

$ awk -va=1 '{print $1,$1+a}' log.txt --------------------------------------------- 2 3 3 4 This's 1 10 11 $ awk -va=1 -vb=s '{print $1,$1+a,$1b}' log.txt --------------------------------------------- 2 3 2s 3 4 3s This's 1 This'ss 10 11 10s

 用法四:

awk -f {awk脚本} {文件名}

 

 

 

转载地址:http://pzoql.baihongyu.com/

你可能感兴趣的文章
redis集群详细配置
查看>>
Python smtplib使用实例:网易邮箱向QQ邮箱发送邮件
查看>>
Google Protobuf在Netty中的使用
查看>>
今年以来的美国重大信息泄漏事件回顾
查看>>
TCP/IP 3.1动态路由选择协议
查看>>
js实现时间的显示,且动态刷新
查看>>
Python基础
查看>>
DVB开发之节目搜索
查看>>
我的友情链接
查看>>
Please enter a valid URL. Protocol is required (http://, https:// or ftp://) in Magento 1.9.2
查看>>
主观题评分
查看>>
cacti-spine安装报错解决
查看>>
我的友情链接
查看>>
Maven 重复依赖的两大原则
查看>>
Android网络图片转换成File文件
查看>>
在centos 7下用cmatrix做出×××屏幕代码雨效果
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
全国示范校建设《计算机网络技术专业》教学资源开发设可行性报告(模板)...
查看>>
Android之旅十一 android中数据存储(1)
查看>>