云计算之awk命令

awk命令在脚本中经常使用,配合着使用,awk会非常强大,今天只做awk的初级整理

awk编程讲解
1.概念:是一种处理文本文件的语言,是强大的文本分析工具
2.语法:
awk [选项参数] '脚本指令' var=value files 
awk [选项参数] -f 脚本指令文件 var=value files
3.选项参数介绍:
-F  指定文件内容分隔符,默认是空格或换行
-v 赋值一个用户定义的变量
-f 从脚本文件中打开awk命令
4.运算符:
a.赋值 = += -= *= /= %=
b.条件 a?b:c
c.逻辑或/与  || &&
d.匹配正则  ~  ~!
e.关系运算符 < <= > >= != ==
f.自增、子减 ++ --
5.内置变量
NF 字段分隔符
NR 行号
NF 列数
RS 记录分隔符(默认是一个换行符)
IGNORECASE 大小写 1:忽略,0:区分大小写
length 每行字符个数[长度]
6.基本用法:
a:awk '{...}' 文件  #行匹配语句,awk '' 只能用单引号
awk '{printf "%-10s %-20s $s\n",$1,$3,$5}' log.txt
b:awk -F   #-F相当于内置变量FS,指定分隔符
awk -F: '{print $1}' /etc/passwd
c:awk -v   #-v设置变量
awk -v a=4 '{print $1,$1+a}' log.txt
d:awk -f awk脚本 文件名
awk -f cal.awk log.txt
7.其他实例
1.输出helloworld
awk 'BEGIN{print "hello world"}'
2.计算文件大小
ls -l *.txt | awk '{sum+=$6} END {print sum}'
3.从文件中找出长度大于80的行
awk 'length>80' log.txt
4.输出99乘法口诀表

seq 9 | sed 'H;g' | awk -v RS='' '{for(i=1;i<=NF;i++)printf("%dx%d=%d%s",i,NR,i*NR,i==NR?"\n":"\t")}

以上只是awk的简单应用,awk非常强大,后期深入整理

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值