shell脚本之awk命令(二)

简介: 1、工作原理2、AWK格式3、按行输入文本4、按字段输入文本5、通过管道符号,双引号调用shell命令

5、通过管道符号,双引号调用shell命令:


echo $PATH | awk 'BEGIN{RS=":"};END{print NR}'      #统计以冒号分隔的文本段落数,END{}语句块中,往往会放入打印结果等语句


w1.png

awk -F: '/bash$/{print | "wc -l"}' /etc/passwd      #调用 wc -l 命令统计使用 bash 的用户个数,等同于 grep -c "bash$" /etc/passwd


w2.png


free -m | awk '/Mem:/ {print int($3/($3+$4)*100)}'  #查看当前内存使用百分比


w3.png


top -b -n 1 | grep Cpu | awk -F ',' '{print $4}' | awk '{print $1}'     #查看当前CPU空闲率,(-b -n 1 表示只需要1次的输出结果)


w4.png


date -d "$(awk -F "." '{print $1}' /proc/uptime) second ago" +"%F %H:%M:%S"     #显示上次系统重启时间,等同于uptime;second ago为显示多少秒前的时间,+"%F %H:%M:%S"等同于+"%Y-%m-%d %H:%M:%S"的时间格式


w5.png


awk 'BEGIN {while ("w" | getline) n++ ; {print n-2}"%"}'    #调用w命令,并用来统计在线用户数


w6.png


awk 'BEGIN {"hostname" | getline ; {print $0}}'         #调用 hostname,并输出当前的主机名


w7.png


当getline左右无重定向符“<”或“|”时,getline作用于当前文件,读入当前文件的第一行给其后跟的变量var或$0;应该注意到,由于awk在处理getline之前已经读入了一行,所以getline得到的返回结果是隔行的。 当getline左右有重定向符“<”或“|”时,getline则作用于定向输入文件,由于该文件是刚打开,并没有被awk读入一行,只是getline读入,那么getline返回的是该文件的第一行,而不是隔行。


seq 10 | awk '{print $0; getline}'  
seq 10 | awk '{getline; print $0}'


w10.png

相关文章
|
1天前
|
Shell
蓝易云 - 简单shell脚本的编写教程
以上就是编写一个基本Shell脚本的步骤。当然,Shell脚本可以做的远不止这些,你可以使用变量,控制结构(如if语句和循环),以及各种Shell命令和功能来编写更复杂的脚本。
11 1
|
10天前
|
存储 Shell 数据安全/隐私保护
Shell 内建命令:Shell 的内在魔力
Shell 内建命令比外部命令执行快,不需额外进程。`type` 命令用来检查命令类型。内建命令如 `cd`、`alias` 和 `echo` 直接在 Shell 中执行,不涉及磁盘 I/O。`type` 示例展示了 `cd` 是内建的,`ifconfig` 是外部的。`bash` 包含多种内建命令,如 `cd` 用于切换目录,`alias` 定义别名,`read` 从输入读取数据。`echo` 默认加换行,`echo -n` 可避免。
19 5
|
9天前
|
Shell 虚拟化
分布式系统详解--框架(Zookeeper-基本shell命令)
分布式系统详解--框架(Zookeeper-基本shell命令)
12 1
|
12天前
|
安全 Shell Linux
探索Linux命令chsh:更改用户的默认shell
`chsh`是Linux命令,用于更改用户的默认登录shell。它涉及用户环境配置和系统安全,允许用户选择更适合自己的shell以提升效率。命令有交互式选项和参数如`-s`来指定新shell。在使用时要注意新shell的可执行性、权限问题及选择合适的shell。例如,要更改为bash,用户可运行`chsh`后按提示操作,而root用户能用`sudo chsh -s /bin/zsh john`为用户`john`设定zsh。在更改前,确认shell路径、权限,并了解不同shell的特点。
|
13天前
|
监控 Shell Linux
Linux的Shell脚本详解
Linux的Shell脚本详解
|
17天前
|
Shell
shell脚本
shell脚本
18 2
|
2天前
|
Shell 调度
Shell脚本中的if条件判断语句
Shell脚本中的if条件判断语句
|
2天前
|
Shell
蓝易云 - 简单shell脚本的编写教程
以上就是编写一个基本Shell脚本的步骤。当然,Shell脚本可以做的远不止这些,你可以使用变量,控制结构(如if语句和循环),以及各种Shell命令和功能来编写更复杂的脚本。
4 0
|
3天前
|
机器学习/深度学习 Unix Java
技术笔记:Linux之Shell脚本编程(一)
技术笔记:Linux之Shell脚本编程(一)
|
6天前
|
Shell
Shell脚本之条件语句if总结
Shell脚本之条件语句if总结