awk实例
AWK
-F 以XX为分割
df -lh | grep boot | awk '{print $5}' | awk -F '%' '{print $1}'
grep "bash" /etc/passwd | awk -F ':' '{print $1,$7}'
首行尾行添加内容
grep "bash" /etc/passwd | awk -F ":" 'BEGIN {print "name,shell"} {print $1","$7} END {print "bin/bosh"}'
搜索/etc/passwd有root关键字的所有行,并显示对应的shell
awk -F: '/root/{print $7}' /etc/passwd
对count指定变量
awk '{count++;print $0;} END {print "user count is ", count}' /etc/passwd
这里没有初始化count,虽然默认是0,但是妥当的做法还是初始化为0:
awk 'BEGIN {count=0;print "[start]user count is ", count} {count=count+1;print $0;} END{print "[end]user count is ", count}' /etc/passwd
统计某个文件夹下的文件占用的字节数,过滤4096大小的文件(一般都是文件夹):
ls -l |awk 'BEGIN {size=0;print "[start]size is ", size} {if($5!=4096){size=size+$5;}} END{print "[end]size is ", size/1024/1024,"M"}'
----------------------------------------------------
unset 变量名 #取消定义变量
set/env 查看所有的环境变量
•常见的环境变量:
• $USER 、$LOGNAME
• $UID 、 $SHELL 、$HOME
• $PWD、 $PATH
$PS1、
--------------------------------------------------
linux中shell变量$#,$@,$0,$1,$2的含义解释:
变量说明:
$$
Shell本身的PID(ProcessID)
$!
Shell最后运行的后台Process的PID
$?
最后运行的命令的结束代码(返回值)
$-
使用Set命令设定的Flag一览
$*
所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。
$@
所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。
$#
添加到Shell的参数个数
$0
Shell本身的文件名
$1~$n
添加到Shell的各参数值。$1是第1参数、$2是第2参数…。
示例:
1 #!/bin/bash
2 #
3 printf "The complete list is %s\n""$$"
4 printf "The complete list is %s\n""$!"
5 printf "The complete list is %s\n""$?"
6 printf "The complete list is %s\n""$*"
7 printf "The complete list is %s\n""$@"
8 printf "The complete list is %s\n""$#"
9 printf "The complete list is %s\n""$0"
10 printf "The complete list is %s\n""$1"
11 printf "The complete list is %s\n""$2
结果:
[Aric@localhost ~]$ bash params.sh 123456 QQ
The complete list is24249
The complete list is
The complete list is0
The complete list is123456 QQ
The complete list is123456
The complete list isQQ
The complete list is2
The complete list isparams.sh
The complete list is123456
The complete list isQQ
awk实例的更多相关文章
- Awk 实例
AWK 是一种用于处理文本的编程语言工具.AWK 在很多方面类似于 shell 编程语言,尽管 AWK 具有完全属于其本身的语法.它的设计思想来源于 SNOBOL4 .sed .Marc Rochki ...
- (转)awk实例练习(二)
文章转自 http://www.cnblogs.com/zhuyp1015/archive/2012/07/14/2591842.html 先来总结一下awk内置变量: ARGC 命 ...
- (转)awk实例练习(一)
文章转自 http://www.cnblogs.com/zhuyp1015/archive/2012/07/14/2591822.html 前一篇学习了awk的基本知识,现在来做一些练习加深一下印象. ...
- awk系列:在awk中如何使用流程控制语句
导读 当你回顾所有到目前为止我们已经覆盖的 awk 实例,从 awk 系列的开始,你会注意到各种实例的所有指令是顺序执行的,即一个接一个地执行.但在某些情况下,我们可能希望基于一些条件进行文本过滤操作 ...
- awk命令
awk 手册 原文 Table of Contents 1. awk简介 2. awk命令格式和选项 2.1. awk的语法有两种形式 2.2. 命令选项 3. 模式和操作 3.1. 模式 3.2 ...
- awk笔记
http://www.cnblogs.com/zhuyp1015/archive/2012/07/14/2591842.html awk实例练习 http://www.cnblogs.com/repo ...
- Linux常用命令之awk
标题:awk命令的使用 作用:awk是非常好用的数据处理工具,主要处理每一行的字段内的数据,默认的字段的分割符为空格键或[tab]键 一.awk脚本的基本结构: awk 'BEGIN{print &q ...
- shell编程awk进阶
awk操作符 算术操作符: x+y, x-y, x*y, x/y, x^y, x%y -x: 转换为负数 +x: 转换为数值 字符串操作符:没有符号的操作符,字符串连接 赋值操作 ...
- shell编程awk基础介绍
awk介绍 报告生成器,格式化文本输出 处理机制类似sed命令,自带循环处理 读入一行处理一行然后自动读取下一行再进行处理 sed命令换行的标识是固定的,只能是回车换行. awk里面的换行 ...
随机推荐
- [Spark][Python]DataFrame中取出有限个记录的例子
[Spark][Python]DataFrame中取出有限个记录的例子: sqlContext = HiveContext(sc) peopleDF = sqlContext.read.json(&q ...
- Python从菜鸟到高手(5):数字
1 基础知识 Python语言与其他编程语言一样,也支持四则运算(加.减.乘.除),以及圆括号运算符.在Python语言中,数字分为整数和浮点数.整数就是无小数部分的数,浮点数就是有小数部分的数. ...
- BugkuCTF web3
前言 写了这么久的web题,算是把它基础部分都刷完了一遍,以下的几天将持续更新BugkuCTF WEB部分的题解,为了不影响阅读,所以每道题的题解都以单独一篇文章的形式发表,感谢大家一直以来的支持和理 ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(3)-监控nginx,php,memcache,Low-level discovery磁盘IO
前段时间在公司IDC服务器上部署了zabbix3.0.3监控系统,除了自带的内存/带宽/CPU负载等系统资源监控模板以及mysql监控模板外,接下来对诸如nginx.php.memcache.磁盘IO ...
- Mysql抓包工具 - MySQL Sniffer 使用小结 (含带general_log日志)
在mysql运维工作中,一般会使用tcpdump做一些分析(直接读分析日志比较难以看明白,在数据库连接值高时使用):对于mysql实时的连接监控分析,通常会使用"mysqladmin/sho ...
- MySQL针对Swap分区的运维注意点
Linux有很多很好的内存.IO调度机制,但是并不会适用于所有场景.对于运维人员来说,Linux比较让人头疼的一个地方是:它不会因为MySQL很重要就避免将分配给MySQL的地址空间映射到swap上. ...
- linux内核期中总结
20135132陈雨鑫 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ...
- Debian中APT的前世今生
https://baike.baidu.com/item/apt-get/2360755 https://www.debian.org/doc/manuals/debian-handbook/sect ...
- linux_查看磁盘与目录容量
一.查看磁盘容量命令df(report file system disk space usage) 终端运行 $ df 输出结果 我的物理主机上的 /dev/sda5 是对应着主机硬盘的分区,字母 a ...
- pandas重新索引
#重新索引会更改DataFrame的行标签和列标签.重新索引意味着符合数据以匹配特定轴上的一组给定的标签. #可以通过索引来实现多个操作 - #重新排序现有数据以匹配一组新的标签. #在没有标签数据的 ...