awk是一个强大的文本分析工具,awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

通常获取某一行时,我们会使用 “grep 关键字“进行查找,但在读取某一列时,就非awk莫属。

使用方法

awk 'pattern {action}' {filenames}

pattern: 正则表达式或者关键字,既可以过滤出需要分析的语句,以"/"始以“/”终。

action:action在一个花括号中,表示一个逻辑编码块,通常只需要‘{print $数字}’。

参数 : -F  '关键字' 表示使用关键字进行切片。

如何获取Id这列:nova service-list | awk '{print $2}' 。就这么简单,注意花括号用单引号。默认是从1开始的,0表示全部。

但此刻只想获取数字,不打印出Id,这时只需要在{}中添加打印条件即可。nova service-list| awk '{if (NR>3) print $2}'

使用 -F 参数,使用:切片/etc/passwd 获取用户名。

使用pattern 匹配,相当于使用grep 进行一次删选,然后再执行awk分割打印,比如打印出包含var的用户

从中获取的id号,我们可以继续编程,查询每个id的信息。比如id是用户id,就可以通过id查询用户的信息。如果一个一个查,势必比较慢,这时可以借助linux的for循环助力。这里查询openstack的flavor并展现每个flavor的信息。展示一个flavor的信息:

在awk中NR 表示number row 行号, FR 表示field number列号

for line in `nova flavor-list |awk '{if(NR>3)print $2}'`;do echo $line;nova flavor-show $line;done

在for...in...do...done,每句都需要以分号隔开。可以从中再用grep命令选出flavor中每个的vcpus行。 

在使用grep命令时,如果是选取其中vcpus和ram都进行展示,则需要 "\|" 进行或选取。\对|进行转义,表示或运算,而不是|字符串

linux中awk命令学习的更多相关文章

  1. linux中awk命令(最全面秒懂)

    目录 一:linux中awk命令 1.awk命令简介 2.awk作用 3.awk的语法格式 4.解析awk使用方法 5.参数 6.awk的生命周期 二:awk中的预定义变量 三:awk运行处理规则的执 ...

  2. linux中awk命令详解(最全面秒懂)

    一:linux中awk命令 1.awk命令简介 AWK 是一种处理文本文件的语言,是一个强大的文本分析工具. 之所以叫 AWK 是因为其取了三位创始人 Alfred Aho,Peter Weinber ...

  3. Linux中grep命令学习

    1.简介 grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.Unix的grep家族包括grep.egrep和fgrep.egrep和fgrep的命令只跟grep有很小 ...

  4. Linux中的命令学习笔记

    Linux挂载Winodws共享文件夹 mount -t cifs -o username=xxx,password=xxxx //1.1.1.1/test /win 产生一个5位随机字符串 | md ...

  5. Linux 中 awk命令应用

    ls -la | awk '{printf ("%8s %8s %8s %8s %8s %8s %8s %8s %8s\n",$1,$2,$3,$4,$5,$6,$7,$8,sub ...

  6. Linux中awk命令的简单用法

    一.用例1: cat /proc/meminfo|grep "MemTotal"|awk '{print $2}' 说明,$2表示第2位,$0表示全部,如需表示$,可用$$转义.

  7. Linux中exec命令相关

    Linux中exec命令相关 exec和source都属于bash内部命令(builtins commands),在bash下输入man exec或man source可以查看所有的内部命令信息. b ...

  8. Linux中date命令的各种实用方法--转载

    在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,自己也曾经为时间的各种表示方法和如何修改时间而困惑,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的 ...

  9. linux中awk的使用

    在linux中awk绝对是核心工具,特别是在查找搜索这一领域,和掌握sed命令一样重要 下面为awk的一些基本知识,基于这些知识,可以让你随意操控一个文件: 在awk中:()括号为条件块,{}为执行的 ...

随机推荐

  1. 20165205 2017-2018-2 《Java程序设计》实验四 Android程序设计

    20165205 2017-2018-2 <Java程序设计>实验四 Android程序设计 实验内容 实验四 Android程序设计-1 Android Stuidio的安装测试: 参考 ...

  2. 1、eclipse

    1.安装java 32位 jdk-7u79-windows-i586-20151024.rar http://www.oracle.com/technetwork/java/javase/downlo ...

  3. python中的reverse

    reverse()将列表中的所有元素位置反转,举个例子: a = [1, 2, 3, 4, 5] a.reverse() print(a) 输出结果: [5, 4, 3, 2, 1]

  4. windows服务器自动删除日志文件

    https://blog.csdn.net/u010050174/article/details/72510367 步骤: 1.新建 一个bat脚本 2.添加到window执行计划中,进行每日执行. ...

  5. 考勤管理系统V1.0.3

    1.0.3:添加了缺勤名单统计.导出功能: 原本的设想是直接上手Node.js 连接MySQL,写一个能增删改查数据的功能,很遗憾小林属实弟弟,但这个“系统”我会一点点完善的,这一次的代码比之前好看了 ...

  6. 【开发工具】 JEECG_3.7新版开发工具

    链接:http://pan.baidu.com/s/1gfthmAf    密码:2yfv

  7. html to docx

    public static void main(String[] args) throws Exception{ //创建 POIFSFileSystem 对象 POIFSFileSystem poi ...

  8. 翻转单链表 leetcode Reverse Linked List

    翻转一个单链表.这个题目听说很多次了,总感觉肯定不是什么难题. 现在真的有点好高骛远了!总感觉那种很难的算法题才是难题,这种题没必要做.其实眼高手低啊. 这种easy题,我都不能一遍ac,这遇到白板编 ...

  9. Delphi 修改本地日期和时间

    procedure TForm1.ModifySysdate(D: Double); var systemtime:Tsystemtime; DateTime:TDateTime; begin Set ...

  10. libcurl+OpenSSL 库分享

    首先,我要感谢这两个博客给我的帮助: https://www.cnblogs.com/findumars/p/7496122.html https://blog.csdn.net/yannanxiu/ ...