Linux Shell编程的实例教程


本文摘自PHP中文网,作者PHP中文网,侵删。

  • awk [-field-separator] 'commands' input-file(s)

基本模式

  • awk -F':' ...

使用#分隔

  • awk '{print $0}' a.txt

打印全部

  • awk '{print $1,$3}' a.txt

打印第1、3列

  • awk 'BEGIN{print "0"}{print $1}' a.txt

第一行打印0

  • awk '{print $1}END{print "0"}' a.txt

最后一行打印0

  • awk '$1 == "0" {print $0}' a.txt

第一列等于0的行

  • awk '$1!="0" {print $0}' a.txt

第一列不等于0的行

  • awk '$1<=$2'

第一列小于等于第二列的行

  • awk '$0!~/0/' a.txt

正则匹配所有列不含0的行

  • awk '$1~/(12|(34)/' a.txt

正则匹配第一列匹配12或34的行

  • awk 'if($1>1 && $2<1) {print $1} a.txt

第一列大于1且第二列小于1的行的第一列

  • awk 'if($1>1 || $2<1) {print $2} a.txt

第一列大于1或第二列小于1的行的第二列

  • awk '{print NF RS NR}' a.txt

连续打印记录列数、记录分隔符、已读记录数

  • awk 'NR==FNR {print $1} NR>FNR {print $2}' a.txt b.txt

打印第一个文件的第一列和第二个文件的第二列

  • awk '{$1=$1*2; print $1}' a.txt

修改数值打印

  • awk 'BEGIN{LAST=0} {if($1>LAST) print $1; LAST=$1}'

逐个比较打印递增数列

  • awk '{total+=$1} END {print total}' a.txt

统计列值

  • awk '{printf "%c", $1}' a.txt

格式化输出

  • awk '{print match($1, "1")}' a.txt

打印第一列第一个1的位置,没有打印0

  • awk '{gsub(/ab/,"cd",$1); print $0}' a.txt

第一列字符串替换

  • awk '{MAP[$1]=$2} END {for(I in MAP){print I, MAP[I]} }' a.txt

字典存储和提取

以上就是Linux Shell编程的实例教程的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

不支持删除默认版本的情况下如何删除指定实例启动模板的一个版本

谈谈Linux的几种零拷贝技术和适用的场景

学习Linux步骤方法

详解Linux虚拟主机相关问题

Linux mount命令详解

Linux中关闭seLinux的方法是什么?

2021年最好用的Linux服务器系统

Linux中如何重复执行上一次运行的命令

安全组里已经没有ecs实例之后如何删除安全组

如何让shell访问正在运行的docker容器

更多相关阅读请进入《Linux》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...