awk 一 文本处理工具
简介
awk 是逐行扫描文件(从第1行到最后一行),寻找含有目标文本的行:
如果匹配成功,则会在该行上执行用户想要的操作。
反之,则不对行做任何处理。
awk 命令的基本格式为:
awk [选项] '脚本命令' 文件名
awk 选项
-F';'
指定以 ; 作为输入行的分隔符,awk 命令默认分隔符为空格或制表符。
-f file
从脚本文件中读取 awk 脚本指令,以取代直接在命令行中输入指令。
-v var=val
在执行处理过程之前,设置一个变量 var,并给其设备初始值为 val。
基本使用
awk 的强大之处在于脚本命令,它由2部分组成,分别为匹配规则和执行命令,如下所示:
'匹配规则{执行命令}'
匹配规则,可以使用字符串(比如 /demo/,表示查看含有 demo 字符串的行)或者正则表达式指定。
另外需要注意的是,整个脚本命令是用单引号 '' 括起,而其中的执行命令部分需要用大括号 {} 括起来。
在 awk 程序执行时,如果没有指定执行命令,则默认会把匹配的行输出;
如果不指定匹配规则,则默认匹配文本中所有的行。
awk -F',' '{print $1 "\t" $2}' ld
以,分割,匹配所有文本,打印第一列和第二列,中间以制表符分割。
awk -F',' '{print $1 , $2}' ld
以,分割,匹配所有文本,打印第一列和第二列,中间以空格分割(,打印以空格分割)。
awk 'BEGIN{print "666"} END{print "8888"}' ld
在开头和结尾打印666和8888。
awk -F',' '/12[1]/{print $1 "\t" $2}' ld
匹配到的行才打印。
awk 'END{print NR}' filename
打印文本文件的总行数
awk 'NR==1{print}' filename
打印文本第一行
awk 一 文本处理工具的更多相关文章
- Pyp 替代sed,awk的文本处理工具
Linux上文本处理工具虽不少,像cut,tr,join,split,paste,sort,uniq,sed,awk这些经典工具让人眼花缭乱,而且都太老了,使用方法都不太人性化,尤其awk,语法简直反 ...
- 日志分析-利用grep,awk等文本处理工具完成(2019-4-9)
0x00 基础日志分析命令 1. tail - 监控末尾日志的变化 $tail -n 10 error2019.log #显示最后10行日志内容 $tail -n +5 nginx2019.log # ...
- AWK文本处理工具(Linux)
AWK文本处理工具(Linux) PS:刚开始实习,就给了个处理百万级别数据的任务,以前学过SHELL的一些东西sed/awk之类的处理,但是也没有具体的应用,只是在10几行10几列的小数据操作过,所 ...
- 三大文本处理工具grep、sed及awk的简单介绍
grep.sed和awk都是文本处理工具,虽然都是文本处理工具单却都有各自的优缺点,一种文本处理命令是不能被另一个完全替换的,否则也不会出现三个文本处理命令了.只不过,相比较而言,sed和awk功能更 ...
- Unix文本处理工具之awk
Unix命令行下输入的命令是文本,输出也都是文本.因此,掌握Unix文本处理工具是很重要的一种能力.awk是Unix常用的文本处理工具中的一种,它是以其发明者(Aho,Weinberger和Kerni ...
- 【Linux】 字符串和文本处理工具 grep & sed & awk
Linux字符串&文本处理工具 因为用linux的时候主要用到的还是字符交互界面,所以对字符串的处理变得十分重要.这篇介绍三个常用的字符串处理工具,包括grep,sed和awk ■ grep ...
- Linux的文本处理工具浅谈-awk sed grep
Linux的文本处理工具浅谈 awk 老大 [功能说明] 用于文本处理的语言(取行,过滤),支持正则 NR代表行数,$n取某一列,$NF最后一列 NR==20,NR==30 从20行到30行 FS ...
- Linux 文本处理工具grep,sed,awk
grep.sed和awk都是文本处理工具,虽然都是文本处理工具单却都有各自的优缺点,一种文本处理命令是不能被另一个完全替换的,否则也不会出现三个文本处理命令了.只不过,相比较而言,sed和awk功能更 ...
- awk 文本处理工具
awk: 强大的文本处理工具,擅长对日志文件进行分析: 不仅用于Linux,也是任何环境中现在的功能最强大的数据处理引擎: 语法说明: awk '{pattern + action}' {filena ...
随机推荐
- zabbix生产环境案例(三)
生产环境案例(三) 链接:https://pan.baidu.com/s/1q5YwJMTcZLcS5OQ0iOu44A 提取码:8gdi 复制这段内容后打开百度网盘手机App,操作更方便哦 1. Z ...
- Python 十大装 B 语法解析
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手.不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了.本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并 ...
- How To Use PostgreSQL with Your Ruby on Rails Application on Ubuntu 14.04
How To Use PostgreSQL with Your Ruby on Rails Application on Ubuntu 14.04 链接来自于:https://www.digitalo ...
- 「ZJOI2019」线段树 解题报告
「ZJOI2019」线段树 听说有人喷这个题简单,然后我就跑去做,然后自闭感++,rp++(雾) 理性分析一波,可以发现最后形成的\(2^k\)个线段树,对应的操作的一个子集,按时间顺序作用到这颗线段 ...
- linux环境下安装PHP的OpenSSL扩展
先安装依赖包:yum install openssl openssl-devel 进入PHP安装包里的OpenSSL文件夹,根据个人的安装包位置不同,此处是 cd /home/local/php.5. ...
- [NOIP模拟测试7]visit 题解(组合数学+CRT+Lucas定理)
Orz 因为有T的限制,所以不难搞出来一个$O(T^3)$的暴力dp 但我没试 据说有30分? 正解的话显然是组合数学啦 首先$n,m$可能为负,但这并没有影响, 我们可以都把它搞成正的 即都看作向右 ...
- 【前端技术】一篇文章搞掂:CSS
Flex布局 Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性. /*父容器,设置弹性布局*/ .parent{display: flex;} /*设置父容器主轴方向* ...
- python爬虫 mac下安装使用Fiddler
HTTP代理工具Fiddler Fiddler是一款强大Web调试工具,它能记录所有客户端和服务器的HTTP请求. Getting started 在安装之前需要准备Mono环境 If you don ...
- 二:unittest框架配合selenium之xpath定位
刚开始学习selenium自动化测试时,犯了一个不该犯的错误,偷懒,使用火狐浏览器中的扩展FIREBUG,FIREPATH来辅助定位. 虽然用的定位方法大多数是使用XPATH方法,但是是工具定位出来的 ...
- CSS:CSS Positioning(定位)
ylbtech-CSS:CSS Positioning(定位) 1.返回顶部 1. CSS Positioning(定位) position 属性指定了元素的定位类型. position 属性的四个值 ...