分类 perl/php/python/gawk/sed articles

awk next多行合并

在awk进行文本处理时候,我们可能会遇到。将多行合并到一行显示问题。awk next语句对多行合并非常有用:其在循环时逐行匹配,如果遇到next,就会跳过当前行,直接忽略下面语句。而进行下一行匹配。 示例1: 测试文本内容如下 : 1[root@361way srv]# cat text.txt 2a 3b 4c 5d 6e 只打印偶数行的内容,并显示行号: 1[root@361way srv]# awk 'NR%2==1{next}{print……

Continue reading

awk Oneliner(四)字符串和数组

awk oneliner一共分为五部分(该部分为作者在前四部分发表后的一年以后做的一个总结),而国内的译文大多也只到第四部分。我也到作者的博客上去看过所有的原文,显然如果前四部分都完全掌握了,第五部分看起来只是一个小case。 1、创建一个固定长度的字符串 1awk 'BEGIN { while (a++<513) s=s "x"; print s }' 这个段程序用……

Continue reading

awk Oneliner(三) 选择性输出

偷得浮生半日闲,继续拜读学习awk oneliner系列的第三部分——选择性输出。该篇主要讲通过awk的正则输出特定的行的内容。其中很多是模拟grep、sed、head、tail命令的部分。由此也更能表现出awk的强大。 1、输出文件的前10行(模拟 head -n 10 ) 1awk ' NR < 11 ' 这里同样省略了……

Continue reading

awk Oneliner (二) 文本替换

能有时间空下来写篇博文真是件幸福的事情,这次还接上篇的awk oneliner的内容学习。即然学到该文,如果不提下原文的作者似乎有点说不通。原作者为Peteris Krumins ,蛮厉害的一个家伙。从博文上来看,长的也很俊朗,主要作品为awk oneliner、sed oneliner、perl on……

Continue reading

awk 流程控制语句实例

一、匹配代码块 匹配模式如下: 1//纯字符匹配 2!//纯字符不匹配 3~//字段值匹配 4!~//字段值不匹配 5~/a1|a2/字段值匹配a1或a2 示例如下: 1awk '/mysql/' /etc/passwd 2awk '/mysql/{print }' /etc/passwd 3awk '/mysql/{print $0}' /etc/passwd //三条指令结果一样 4awk '!/mysql/{print $0}' /etc/passwd //输出不匹配mysql的行 5awk '/mysql|mail/{print}' /etc/passwd 6awk '!/mysql|mail/{print}' /etc/passwd 7awk -F: '/mail/,/mysql/{print}' /etc/passwd //区间匹配 8awk '/[2][7][7]*/{print $0}' /etc/passwd //匹配包……

Continue reading

awk 正则表达式与正则运算符

正则表达式就像一门程序语言,有自己语法规则已经表示意思。 对于不同工具,其实大部分表达式是相同的。在linux众多文本处理工具(awk,sed,grep,perl)里面用到正则表达式只有3种类型。详细可以参考:linux shell 正则表达式(BREs,EREs,PREs)比较。只要是某些工……

Continue reading

awk 运算符小结

同其他编程语言一样,awk也有算术运算符,赋值运算符,关系运算符,逻辑预算法,正则运算符。本篇就结合一些示例进行小结。 一、运算符介绍 运算符 描述 赋值运算符 = += -= *= /= %= ^= **= 赋值语句 逻辑运算符 || 逻辑或 && 逻辑与 正则运算符 ~ ~! 匹配正则表达式和不匹配正则表达式 关系运算符 < <= > >= != == 关系运算符……

Continue reading

awk 内置函数详解

本文承接上篇 linux awk 内置变量,本篇总结下awk内置函数。awk内置函数主机分为如下几种:数学函数、字符串函数、时间函数、其它函数。 一、数学函数 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y, x ) 返回 y/x 的反正切。 cos( x ) 返回 x 的余弦;x 是弧度。 sin( x ) 返回 x 的正弦;x 是……

Continue reading

linux awk 内置变量

一、内置变量表 属性 说明 $0 当前记录(作为单个变量) $1~$n 当前记录的第n个字段,字段间由FS分隔 FS 输入字段分隔符 默认是空格 NF 当前记录中的字段个数,就是有多少列 NR 已经读出的记录数,就是行号,从1开始 RS 输入的记录他隔符默 认为换行符 OFS 输出字段分隔符 默认也是空格 ORS 输出的记录分隔符,默认为换行符 ARGC……

Continue reading

Latest articles

Categories

Tags

ACL AD AES AI AWS Ansible Atlassian Azure BMC Blockchain Brocade CDH5 CL210 Cobbler Confd C语言 DDOS DISTINCT DNS Duckdb EKS ELK GCP Ghost Git Glusterfs Go Godaddy Grafana HBA HCIE Hotspot HttpWatch IBM IIS IOS InfluxDB Ingress InnoDB JavaScript Jinja2 KVM Keepalived Mplayer MySQLdb Netlify OpenResty PM PostgreSQL QoS RH318 RH442 RHCA RHCE RHEV RSA SRE SecureCRT Statuscode SublimeText2 TC Telecom Tencentcloud VBA aira2 alpine android anpic apache apm apparmor appfog apr apt-get aria2 array atop audit awk awstats axel backdoor backup bamboo bash bat benchmark bigdata bin bind bitwise book bootstrap bsd c1000 cache capistrano catlog centos centos7 chatops chattr check_mk checkinstall cisco clearall clickhouse cloud-desktop cmdb cms collectd comm compress conver corosync cpu crontab crunchbang css curl date decode dell desktop devops df dhcp diff diskpart django docker dos2unix dpkg drupal etcd excel fail2ban fastcgi fdisk fiddler find firewalld flask flvtool ftp function fuser geek gin github gitlab glances golang google gooupadd graphviz gravatra grep grub2 hadoop haproxy hardware heartbeat helm hexdump hhvm history html http/html/web httplogs https huawei huaweicloud hugo icmp iconv ifconfig inotify iopp ipmitool iptables iredmail iscsi isito it-news java jdk jenkins jira join joomla k3s k8s kdump kernel kingate lamp last leetcode lib light-http linux linux高级篇 ln ls lsi lsof lvm lvs mac mail man mark markdown matplotlib maven memcached microservice mimikatz mkdocs mkpasswd mmonit mod_jk mongodb monit monitor mono moodle mosh mount mpm mrtg mtr my.cnf mysql mysqlbinlog mysqld_multi mysqldump mysqlhotcopy nagios nc nethogs nexus nfs nginx nmon nocatlog node.js nrpe ntfs ntop ntp obs ocr open-falcon openbox opencv openldap openssl openstack oracle oswatch paas pacemaker pam pandas parted pcp pcre pdf percona perl pexpect pgrep php php-fpm ping plsql develope postfix powershell prettify proc prometheus puppeteer pushd pwgen pxe pyecharts python python模块 radmin raid rdesktop read redhat redis redmine regex rh134 rhel7 rhel8 rm rman rootkit route rpm rpmforge rrdtool rsync rsyslog safe saltstack samba scapy screen sed selenium selinux seo seq session set shc sheepdog shell shopt sitemap skydns smokeping snffier snmp socket soft sort spider sql sqlserver squid ss ssh sshpass strace strings su sudo suse svn sysbench syslog-ng sysstat systemd t tar tcpcopy tcpdump tech telnet tengine test testlink threads time tmux tomcat touch tr tsar twisted ubuntu udev ulimit unix unixbench user-agent useradd varnish vbs vercel vi vim visudo vmstat vmware vnc voice vpn vscode vsftp vsftpd vue watchdog web webcam webistrano wget wiki windows wol wordpress workshop wsl x-windows xampp xcache xmllint xtrabackup yule yum zabbix zeromq zip zonetime zookeeper 下载工具 云主机 云原生 代理 加密 古意 吐槽 圈里圈外 娱乐 字符串函数 安全 平台架构 意林 推理 提权 故事汇 故障案例 数据结构 每日看点 民国史 生活 科学记录 站长管理工具 算法 管理 网站架构 翻墙 股票 行业 诗韵 负载均衡 远程管理 面试题

Links

Meta