六周第三次课(1月17日)

六周第三次课(1月17日)
9.6/9.7 awk

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 AWK 的确拥有自己的语言: AWK 程序设计语言 , 三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。

awk -F ":" "{print $1}" test.txt 指定分割f为: 把第一段打印出来

$0表示所有的段

打印所有的段 相当于cat

不指定分割f,默认以空格或空白为分割进行打印

指定分割f,打印多段

指定中间以什么为分割

把包含oo的打印出来 awk "/oo/"

匹配第一段包含oo的行

适用正则表达式     且不用加脱义字符

支持多个表达式一起写

打印第三段等于0的行   要写2个=,写1个=是赋值,不写print默认是print $0

打印大于等于1000的

加上双引号,以ASCII码计算,会认为这是一个字符串  需求如果是针对数字的不要加双引号

第七段不等于!=   字符串要加上双引号

比较2个字段 第三段小于第四段  相等的行

多个判断一起   $3>5并且$3<7

-F指定分割前的分割f,OFS=指定print时分割后用到的分割f

NR 表示行 类似grep -n  NF表示段

 

NR作为判断条件

NF作为判断条件

$1$7到$30$7   $NF指最后一段

$1=root  赋值,以:分割打印,赋值为root,赋值之后分割f没了,使用OFS定义分割F

求和第三段所有值的和

扩展

把这里面的所有练习题做一下
http://www.apelearn.com/study_v2/chapter14.html

原文地址:http://blog.51cto.com/4375471/2062284

时间: 2024-10-27 21:23:02

六周第三次课(1月17日)的相关文章

三周第三次课(12月27日) 3.7 su命令 3.8 sudo命令 3.9 限制root远程登录

三周第三次课(12月27日)3.7 su命令3.8 sudo命令3.9 限制root远程登录 su命令: 用户和工作组管理: su命令用于切换当前用户身份到其他用户身份, 变更时须输入所要变更的用户帐号与密码. 语法: su(选项)(参数) 选项: -c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份: -f或--fast:适用于csh与tsch,使shell不用去读取启动文件: -l或--login:改变身份时,也同时变更工作目录,以及HOME,SHE

Linu20180415三周第三次课(4月4日)

3.7 su命令3.8 sudo命令3.9 限制root远程登录 su就是切换用户的命令 su - username 切记要使用 - . 我经常使用的时候是不加上-的,这样的话切换的不彻底,尚在之前用户的家目录下 可以采用 whoami来查看当前用户 -c 选项可以用来不登入用户,但是使用该用户来执行命令 su - -c "touch /tmp/3.33333" hello如下图所示 是否还记得 useradd -M user 是建立用户但是不生成家目录? 这样虽然可以切换到这个用户但

Linux学习笔记第三周第三次课(2月7日)

3.7 su命令 root用户切换到普通用户命令,su: 完全彻底切换 - ,连环境变量,家目录也切换,命令为#su - aming: 查看当前登陆用户,命令为#whoami: 查看当前目录,命令为#pwd: 查看用户UID,GID,组,家目录,用户shell目录,命令为#id: 切换用户,环境变量和家目录没切换,命令为#su aming: 退出切换的用户,命令为#exit: 当前用户下,不切换到aming用户,使用aming账号,执行touch命令,#su - -c "touch /tmp/a

六周第三次课(1月17日) 9.6/9.7 awk

六周第三次课(1月17日)9.6/9.7awk ==================================================================================================================================================================================================================================

六周第三次课(3月14日)

六周第三次课(3月14日)9.6/9.7 awk扩展 9.6 awk(上)把passwd文件拷贝到目录awk,做实验. 打印文档中的某段 打印第1段的用法示例如下: 打印所有段的用法示例如下:不需要制定分隔符 不制定分隔符,会以空格和空白字符为为空隔符去打印.创建一个测试文件. 打印第1第3第4段的用法.中间要加逗号. 自定义分隔符为#,自定义的内容要加"" 打印包含某字符或字符串的行 打印含有oo的行,命令如下: 打印第1段含有oo的行,命令如下: 可以分段匹配,比sed强. awk

三周第五次课(12月29日) 4.5/4.6 磁盘格式化 4.7/4.8 磁盘挂载 4.9 手动增加swap空间

三周第五次课(12月29日)4.5/4.6 磁盘格式化4.7/4.8 磁盘挂载4.9 手动增加swap空间 [[email protected] ~]# [[email protected] ~]# mke2fs命令文件系统管理mke2fs命令被用于创建磁盘分区上的"etc2/etc3"文件系统. 语法:mke2fs(选项)(参数) 选项:-b<区块大小>:指定区块大小,单位为字节:-c:检查是否有损坏的区块:-f<不连续区段大小>:指定不连续区段的大小,单位为

三周第五次课(12月29日)

4.5/4.6 磁盘格式化 centos7所支持的文件系统 格式化 -t 指定格式化成的文件系统  -b 指定块大小 mke2fs -t ext4 -b 2048 /dev/sdb1   mke2fs不支持-t xfs mkfs.ext4 /dev/sdb1 实际等于mke2fs -t ext4 /dev/sdb1 mkfs.xfs /dev/sdb1 这个命令会有提醒  加一个-f强制  mkfs.xfs -f /dev/sdb1 此时分区未挂载,使用命令blkid /dev/sdb1 查看

Linux学习笔记第三周第四次课(2月8日)

4.1 df命令 df,report file system disk space usage汇报文件系统磁盘空间使用情况: df命令格式:df [选项] df -a:all 显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统. df -h:human readable以容易理解的格式输出文件系统大小,例如124KB.345MB.46GB. df -i:inodes 显示i节点使用情况. df -m:以MB为单位显示文件系统使用情况: df -t:type 显示各指定类型的文件系统

三周第五次课(2月9日)

这是linux 所支持的文件系统格式mke2fs 格式化 -t(指定密钥格式化成什么系统)-b (指令块大小)-m(指定分区预留的大小)-i(指定多少个字节对应多少个inode)一个磁盘不分区也可以格式化blkid /dev/sdb 查看格式文件系统 格式化之后才能挂载文件系统挂载命令mount卸载 umount -l /MNT/vi /etc/fstab 里面挂载了很多系统配置文件手动增加swap空间格式化swap= mkswap -f /tmp/newdiskswapon 加载到现在的文件