shell入门-awk-3
awk的内置变量
NR 表示行
NF 表示段
显示第十行
[root@wangshaojun ~]# awk -F ':' 'NR==10' 1.txt
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
显示小于第三行
[root@wangshaojun ~]# awk -F ':' 'NR<3' 1.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
显示小于第三行 显示第1 3 4 段
[root@wangshaojun ~]# awk -F ':' 'NR<3 {print $1,$3,$4}' 1.txt
[root@wangshaojun ~]# awk -F ':' '{if(NR<3) print $1,$3,$4}' 1.txt
root 0 0
bin 1 1
显示小于第三行 显示第1 3 4 段并添加分隔符
[root@wangshaojun ~]# awk -F ':' 'OFS=":" {if(NR<3) print $1,$3,$4}' 1.txt
root:0:0
bin:1:1
//////////////////////////////////////////////////////////////////////////////////////////////////
直接打印NF
[root@wangshaojun ~]# awk -F ':' '{print NF}' 1.txt
7
7
7
....
段数等于7的行 打印第一段
[root@wangshaojun ~]# awk -F ':' 'NF==7 {print $1 }' 1.txt
root
bin
daemon
adm
....
如果段数等于7,打印第一段
[root@wangshaojun ~]# awk -F ':' '{if (NF==7) print $1}' 1.txt
root
bin
daemon
adm
.....
数学运算
$7显示第三段的数字加上第四段的和
[root@wangshaojun ~]# awk -F ':' '$7=$3+$4' 1.txt
bin x 1 1 bin /bin 2
daemon x 2 2 daemon /sbin 4
adm x 3 4 adm /var/adm 7
lp x 4 7 lp /var/spool/lpd 11
.....
$7显示第三段的数字加上第四段的和并显示第三段第四段第七段
[root@wangshaojun ~]# awk -F ':' '$7=$3+$4 {print $3,$4,$7}' 1.txt
1 1 2
2 2 4
3 4 7
4 7 11
5 0 5
.......
$7显示第三段的数字加上第四段的和并显示第三段第四段第七段,显示分隔符
[root@wangshaojun ~]# awk -F ':' 'OFS=":" {$7=$3+$4; print $3,$4,$7}' 1.txt
0:0:0
1:1:2
2:2:4
3:4:7
.....
求所有第三段的数字的和
[root@wangshaojun ~]# awk -F ':' '{(sum=sum+$3)}; END {print sum}' 1.txt
3785
////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
总结:OFS分隔符 NF表示段 NR表示行
shell入门-awk-3的更多相关文章
- Linux shell入门基础(六)
六.Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行 ...
- AWK增强的文本处理shell特征--AWK完全手册
AWK这是一个很好的文字处理工具. 它不仅 Linux 中也是不论什么环境中现有的功能最强大的数据处理引擎之中的一个. 本文主要摘录池中龙写的Unixawk使用手冊(第二版),对当中内容略微修改.感谢 ...
- Shell入门02
Shell入门-02 1.重定向 标准输入(<) 标准输出 标准错误重回定向 程序 = 指令 + 数据 命令 变量 在程序中,数据如何输入?又如何输出? 数据输入:键盘 – 标准输入,但是并 ...
- Shell入门01
Shell入门 1.基于硬件的虚拟化 2.基于平台的虚拟化 3.基于服务的虚拟化 4.基于库的虚拟化 5.基于操作系统的虚拟化 管理员使用Shell程序与操作系统进行交互,之前学习的shell脚本都是 ...
- Linux shell入门基础(一)
Linux shell入门基础(一): 01.增加删除用户: #useradd byf userdel byf(主目录未删除) userdel -r byf 该用户的属性:usermod 用 ...
- CU社区shell板块awk十三问整理
CU社区shell板块awk十三问整理 一.RS="" 当 RS="" 时,会将\n强制加入到FS变量中,因为RS为空时,是将连续多空行作为分隔符,近似于\n\ ...
- Shell - 简明Shell入门
本文以示例和注释的方式,对Shell编程的基本知识点进行了总结和回顾,所有脚本均已做了基本的调试和验证. Shell - 简明Shell入门 01 - 第一个脚本 脚本的定义.执行方法以及echo命令 ...
- linux shell 入门
本文是本人学习linux shell入门收集整理,不完全原创. 参考博文: http://www.cnblogs.com/suyang/archive/2008/05/18/1201990.html ...
- Shell 学习—AWK介绍
Shell 学习—AWK = = = 安装awk root@kiki-desktop:~/shell# apt-get install gawk gawk-doc = = = awk 是一种程序语言. ...
- shell 入门学习
目录 shell 入门学习 注释 执行与启动 变量 语法 调试 title: shell 入门学习 date: 2019/7/16 15:47:49 toc: true --- shell 入门学习 ...
随机推荐
- htop的使用
htop是top的增强版本.官网地址: http://hisham.hm/htop/ 这网站比较...... 实验环境: [root@miyan ~]# cat /etc/redhat-release ...
- R语言数据管理(三):数据读入
R的数据读入非常灵活,即可以在R软件中直接输入,也可以读入外部数据. 一.直接输入数据 ①c()函数 ②scan()函数 其功能类似c()函数,scan()实际上是一种键盘输入数据函数.当输入scan ...
- WebApp页面开发小结
一 背景 公司需要开发一个web页面,需要支持主流android和ios手机,采用web页面好处是一个页面,在不同平台之间都可以用,节省成本,基本html.js和css大家也都熟悉.但是对 ...
- python基础15 ---面像对象的程序设计
面向对象的程序设计 一.面向对象的程序设计简介 1.面向对象程序设计的由来. 我们之前虽然学习过了面向过程的程序,它的核心是面向过程,一步一步的设计好了的流程,虽然极大的降低了程序的复杂度,但是一个设 ...
- Mac下XAMPP环境中安装MySQLdb
环境: Mac OS X. Mac下安装MySQLdb模块着实多了些步骤. 用easy_install或者pip安装时有两大问题,"mysql_config not found"和 ...
- PAT 天梯赛 L2-009. 抢红包 【排序】
题目链接 https://www.patest.cn/contests/gplt/L2-009 思路 用结构体存储,然后结构体排序 注意一下 个人编号是从 1 开始 计数的 AC代码 #include ...
- 数据库 简单查询 Sql Server 学生表 课程表 选课表
创建教材中的三张表格,并输入相应的数据 Create table student( Sno char(9), Same char(20), Ssex char(2), Sage smallint, S ...
- iOS中成员变量和属性区别
历史由来: 接触iOS的人都知道,@property声明的属性默认会生成一个_类型的成员变量,同时也会生成setter/getter方法. 但这只是在iOS5之后,苹果推出的一个新机制.看老代码时,经 ...
- stm32非操作系统开发和带uCos的开发的区别,及一些解析
从文件角度来看core_cm4.h和stm32f4xx.h分别从内核寄存器和外设寄存器来定义其地址和结构体,是用c语言访问硬件必须的文件,所以这两个文件不论是否带操作系统,都是必须包含进工程的. re ...
- 广义表(C++实现)
广义表是非线性结构,其定义是递归的. 以下给出几种简单的广义表模型: 由上图我们可以看到,广义表的节点类型无非head.value.sub三种,这里设置枚举类型,利用枚举变量来记录每个节点的类型: e ...