awk 6.0 — awk模式之二
awk的语法
awk [options] ‘Pattern {Actions}’ file1,file2…
之前介绍了三种模式:空模式,关系运算模式,BEGIN/END模式
正则模式
模式可以理解成条件,正则模式就是满足正则表达式条件的,就执行相应的动作,否则不执行。
如果我们想要找到在/etc/passwd文件中,以“_krb”开头的内容该如何找呢
grep "^_krb" /etc/passwd
同样的,我们想要使用awk的方式完成这个操作,
awk '/^_krb/{print $0}' /etc/passwd
比较一下上面两种方式,grep将正则表达式放在了双引号中,awk将正则表达式放在了两个反斜杠中。
上面示例看上去是grep更加的简介,但是有一些具体的case的时候,awk显得更加美观。awk有格式化输出的功能。请读者尝试着读下面的使用方式:
注意点:1. 如果在awk的正则中使用了/,这个时候就需要使用转义字符,假如下面的需求,我们想要从passwd文件中,找到/bin/bash作为登陆shell的用户,
awk '\/bin\/bash$/{print $0} /etc/passwd'
注意点:2. 如果在正则中,需要使用形如{x,y}这种类型的表达式的时候,需要使用–posix,或者–re-interval选项
awk --posix '/he{2,3}y/{print $0} test'
行范围模式
假如有下面的文件(为了截图方便,我把文件和操作放在一起了)
文件中,hello出现了两次,world出现了一次,如果我想筛选出,hello第一次出现和world第一次出现中的所有行的内容,就使用上面的方式
总结一下就是,使用两个正则表达式,匹配所有的行,意思就是从第一个正则开始,到第二个正则结束匹配所有的行。
行范围模式另外一种方式,可以使用关系运算模式进行解决,比如打印3-6行的数据。
awk 'NR>=3 && NR<=6 {print $0}' test
相关文章:

根据搜索来路 弹出相应广告
根据搜索来路 弹出相应广告 以下是一段php判断搜索引擎的代码 <?PHP $referer $_SERVER[HTTP_REFERER]; if(!$referer ){ if(ereg(http,$referer)){ $referer eXPlode(.,$referer); if(is_array($referer)){ $referer $referer[1]; if($referer google OR $referer b…

redis mysql查询数据类型_linux 常见的标识与Redis数据库详解
xxxxxx:~$ :第一个 xxx 只的是 用户名第二个 xxx 代表的是 HOST主机~ : 当前用户的根, 根的位置在 /home/用户名$ : 代表当前用户是一个普通用户# : 代表当前用户是超级用户查看当前命令所在的位置pwd文件夹/文件的常见命令mkdirlsrmdirrm创建文件夹mkdirmkdir test…

/etc/hosts/中HOSTNAME错误导致lsnrctl启动错误
系统环境:REDHAT LINUX5.4 ORACLE10.2.0.4,是通过虚拟机复制另外一台数据库系统环境后安装ORACLE获得。故障现象:ORACLE安装正常,本地服务正常,本地数据通过IMP可以正常导入,但是LSNRCTL能够启动ÿ…

16_python_面向对象
一、面向对象和面向过程的区别1、面向对象:一切以对象为中心。有相同属性和动作的结合体叫做对优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易…

怎么用canvas画秒针_用canvas画一个钟表
body{background: #000000;}#c1{background: #FFFFFF;}span{color: #FFFFFF;}var oCdocument.getElementById("c1");var oGcoC.getContext(2d);setInterval(function(){ //循环计时器每一秒调用一次,相当于每隔一秒画一次表盘oGc.clearRect(0,0,oC.offset…

每日英语:China's Labor Market Tightens
Job cuts in China appear to be on the rise, dimming prospects for a labor market that has been a resilient bright spot amid a slowdown in the worlds second-largest economy. dimming:调光;变暗 resilient: 弹回的…

大数据-spark-hbase-hive等学习视频资料
不错的大数据spark学习资料,连接过期在评论区评论,再给你分享 https://pan.baidu.com/s/1ts6RNuFpsnc39tL3jetTkg 转载于:https://www.cnblogs.com/xjh713/p/9704251.html

redis学习 -- 简单动态字符串
Redis没有使用C语言字符串的形式,通过’\0’作为结尾,而是使用了简单动态字符串(simple dynamic string)。 当Redis使用的字符串不需要修改字符串的内容的时候,可以使用C语言提供的字符串,当需要修改内容的时候就使用的是简单动态…
【stanford C++】容器III——Vector类
主要介绍如下5个容器类——Vector, Stack,Queue,Map和Set,各个都表示一重要的抽象数据类型。另外,各个类都是一些简单类型的值的集合,所以称它们为容器类。 暂且我们先不需要知道它们是如何实现的ÿ…

linux编译安装mysql 5.1_linux编译安装mysql5.1.x
安装mysql,安装前准备如果mysql用户不存在,那么添加mysql用户groupadd mysqluseradd -g mysql mysqlmysql编译安装make时间特别长wget http://downloads.mysql.com/archives/mysql-5.1/mysql-5.1.70.tar.gztar -zxvf mysql-5.1.70.tar.gzcd mysql-5.1.70…

Windows PowerShell 批量迁移Windows用户信息
这里说一下我在服务器上本地用户帐号、组的迁移 这里用到的迁移工具是 Windows PowerShell 迁移支持虚拟机和实体机器的迁移,虚拟机和虚拟机的迁移 但是不支持不同语种之间的迁移,比如英语向中文迁移 这里我实验的是虚拟机和虚拟机的迁移 系统是Windows…

css中position的几个值
1. staitic:该值符合文档的初始排版,其中设置的与位置有关的值不起作用。2.relative 该值的偏移量,是在文档初始排版的基础上进行排版,并且覆盖顺序是最新输出的在最上面3.absolute该值元素的定位是以网页文档左上角位基准,并且不…

一个较为详细的ETL系统实现方案
转至:http://www.cognoschina.net/club/viewthread.php?tid5627 1 ETL流程及调度设计(ETL Schedule)(PSP)1. ETL调度的目标快速见效系统要抽取39家分行四个系统的数据进行加工处理,数据从下传文件到ODS库,ODS库到LDM&…

python与anaconda区别_anaconda和python的区别是什么?
anaconda和python的区别是什么?Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。使用python需要下载安装执行python代码的环境。官方的Python包含了核心的模块和库,为了完成其他任务,需要安装其他的模块和库。Anaconda 是Py…

opencv 1 图像载入、显示和输出
三个函数 imread() namedWindow() inshow()1. imread 函数原型: Mat imread(const string& filename, int flags 1 );参数解析: const string& finename 将要载入的图片路径名。 Windows操作系统下面支持如下类型的图片: Window…

英文申请书范例
Dear Sir or Madam, I am applying for the position of Executive Assistant as advertised in the Recruitment Daily last evening. 我来应聘昨天晚上在每日招聘上发布的行政助理一职。 I have over five years of experience within this role during which time I have de…

c++ ofstream使用方法
ofstream是从内存到硬盘,ifstream是从硬盘到内存,流缓冲即是内存空间。 插入器<< : 向流输出数据。 cout << "test!" << endl; 将字符串输出到标准输出流。 析取器>> : 从流中输入数据 cin >> x; 从标准输入流…

JAVA 继承内存模型_Java内存模型
JVM的组成类加载器(classloader)执行引擎(execution engine)运行时数据区域(runtime data area)对于Java程序员来说,在虚拟机自动内存管理机制下,不再需要像C/C程序开发程序员这样为内一个new 操作去写对应的delete/free操作,不容易出现内存泄…

Error: The INF file contains Unicode characters that could not be converted correctly
昨天第一次为自己的windows mobile程序制作CAB安装包,但是在生成过程中,却出现了这样一个问题:编译完成 -- 0 个错误,0 个警告time -> G:\WindowsMobile\time\time\bin\Debug\time.exe------ 正在启动项目“SmartDeviceCab1”的…

嵌入式开发板设置无密码登录
本次配置需要修改的ssh登录的配置文件 vi /etc/ssh/sshd_config允许root用户远程登录 设置PermitRootLogin参数值为yes #LoginGraceTime 2m PermitRootLogin yes #StrictModes yes #MaxAuthTries 6 #MaxSessions 10允许无密码登录 设置PermitEmptyPasswords 参数值修改为ye…

2012/08/27 夜
杂记于2012/08/27 唉,,最近公司在搬家,一直没有时间来看技术方面的资料,丫的上个星期天还接到第二天凌晨3点钟呢。。。唉。。有点受不了啊。。这苦逼的运维工作,,,呵,来说说这其中让…

存储过程和函数 PROCEDURE FUNCTION
SQL语句执行的时候,要首先编译,然后在被执行。在大型数据库系统中,为了提高效率,将为了完成特定功能的SQL语句集进行编译优化后,存储在数据库服务器中,用户通过指定存储过程的名字来调用执行。 具体而言&am…
Android——学习:线性布局权重分配
LinearLayout在Android中被广泛使用,LinearLayout有一个比较重要的属性——android:layout_weight。按照字面理解就是该控件的权重,这个值默认是 零(0)。 举个例子: 在下图中,整个界面是一个Linearlayout&a…

java bean配置文件_Spring中多配置文件及引用其他bean的方式
Spring多配置文件有什么好处?按照目的、功能去拆分配置文件,可以提高配置文件的可读性与维护性,如将配置事务管理、数据源等少改动的配置与配置bean单独分开。Spring读取配置文件的几种方式:1、使用Spring自身提供的ApplicationCo…

putty 串口登录开发板
安装putty 多个平台均可以安装putty pc端配置 使用串口线连接开发板 ls /dev 查看是否出现类似于ttyUSBx的文件 sudo putty 弹出页面,选择Serial Serial line填写/dev/ttyUSBx Speed填写115200(根据不同开发板,选择不同参数) 依次点击Load࿰…

win7下解决Android SDK Manger慢
2019独角兽企业重金招聘Python工程师标准>>> 今天准备做个Android小程序,以前配置的环境太久了,于是想配最新,但是花了大半天的时间遇到各种问题,最终还是配置好了。 1、首先修改C:\Windows\System32\drivers\etc\host…

Linux 工具进阶
参考网址 https://linuxtools-rst.readthedocs.io/zh_CN/latest/advance/index.html 转载于:https://www.cnblogs.com/artesian0526/p/9712258.html

ASP.NET MVC:利用ASP.NET MVC4的IBundleTransform集成LESS
背景 LESS确实不错,只是每次写完LESS都要手工编译一下有点麻烦(VS插件一直没有安装好),昨天在官方看到了如何用IBundleTransform集成LESS,今天就记录一下。 参考资料:http://www.asp.net/mvc/tutorials/mvc…

java锁屏_JAVA设置桌面不锁屏设置
//下面是编译命令// javac -encoding utf-8 Main.javaimport javax.swing.*;import java.awt.*;import java.awt.event.*;public class Main extends WindowAdapter {JLabel label null;public Main() {JFrame jFrame new JFrame("保持打开就不会锁屏");Container …

网线直连开发板
pc 端配置 点击pc端无线链接图标编辑链接以太网编辑IPv4设置方法:与其他计算机共享根据putty获取的动态ip使用ssh登录 解决 ip 无法登录问题 设置 pc 端 ip 和开发板 ip 在同一个网段 比如开发板 ip 是 10.42.0.123 可以设置自己机器的 ip 为 10.42.0.11 sudo i…