博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
awk入门
阅读量:5084 次
发布时间:2019-06-13

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

awk入门与基础

 

  awk不仅仅是linux操作系统中的一个命令,而且是一种编程语言,可以用来处理数据和生成报告(excel) 处理数据可以是一个或多个文件,可以是来自标准输入也可以通过管道符获取标准输入,awk可以在命令行上直接编辑命令惊醒操作也可以编写成awk程序来进行更为复杂的运用。

 

   指定awk按照什么字符进行文本切割,将源文件切割成以列一列的,如果不指定一下参数,awk默认按照空格进行文本切割,{}中的print代表输出的意思,$代表去列,$1代表取第一列,$2代表取第二列,以此类推,$0代表取全部

 

例如:awk ‘{print $1 }’ 文件名

 

输入分隔符为 的第一列

 

例如:awk -F “:” ‘{print $1}’ 文件名

 

awk格式

 

awk的条件分为两部分

 

模式:内容的查找范围,过滤文件的内容

 

动作:将给我们找到的内容切割成以列一列的进行输出

 

   如果没有动作默认输出全部($0)模式是按行取数据的,动作是按列取数据的

 

Awk -F[参数] ‘BEGIN{}模式{

动作}END{}’ 文件名

 

BEGIN====>开始模块 用来告诉awk数据该如何读

 

END  ===>结束模块  用来告诉awk程序如何结束

 

   NR这个符号其实真正的含义不是行号,而是数据被awk读取一段以后,NR就会记录一次

 

  由于awk默认以\n作为每次读数据的结束标志,因此NR就恰好等于行号了

 

   假如修改awk默认的读数据的默认换行符,读入换行符可以通过BEGIN模块在awk读取数据之前设定它的读入换行符是谁,默认awk读入换行符和输出换行符都是\n

 

   BEGIN{RS=”:”;ORS=”|”} 修改读入换行符

 

END=BEGIN{RS=”:”;ORS=”|”} 修改读入和输出换行符

 

{print  xxx} 输出 (打印)

 

awk四中模式

 

正则表达式

 

比较表达式

 

范围表达式

 

模式表达式

 

正则表达式

 

~正则匹配操作符

 

~ 取反

 

//代表要输入正则

 

awk属组

 

  假如想用一种变量来表示多组数据通常要优先考虑数组的形式

 

例如:变量名[数字] =不通知

 

for (i  in  h)  i==>变量   in==>从哪取值  

 

For===>循环输出  

 

Tr 替换命令

 

格式  tr “+” “:”   +替换成:

 

转载于:https://www.cnblogs.com/weizhimin/p/9882593.html

你可能感兴趣的文章
leetcode 856. Score of Parentheses
查看>>
ubuntu安装beatifulsoup,pip,creepy
查看>>
【代码笔记】Web-ionic-创建APP的架构
查看>>
又简单界面又不错的GUI
查看>>
wsgi pep333
查看>>
Android调用默认浏览器打开指定Url
查看>>
程序猿必备认知!
查看>>
洛谷 3613 - 睡觉困难综合征
查看>>
安全协议系列(一)----WEP详解
查看>>
ASP.NET Excel数据导入数据库
查看>>
openstack创建实例时aborted: Block Device Mapping is Invalid
查看>>
C++中dynamic_cast,static_cast,const_cast,reinterpret_cast
查看>>
Vue中使用computed与watch结合实现数据变化监听
查看>>
nginx跨域设置
查看>>
Android模板制作
查看>>
Gallery练习(android)
查看>>
Android开发环境搭建
查看>>
[BZOJ1858][Scoi2010]序列操作 线段树
查看>>
win10 安装vue开发环境
查看>>
[bzoj2229][Zjoi2011]最小割
查看>>