一聚教程网:一个值得你收藏的教程网站

热门教程

linux中查询远程服务器内存以及awk使用

时间:2022-11-14 22:07:48 编辑:袖梨 来源:一聚教程网

使用方法

awk '{pattern + action}' {filenames}

调用awk

有三种方式调用awk

1.命令行方式

awk [-F field-separator] 'commands' input-file(s)
其中,commands 是真正awk命令,[-F域分隔符]是可选的。 input-file(s) 是待处理的文件。
在awk中,文件的每一行中,由域分隔符分开的每一项称为一个域。通常,在不指名-F域分隔符的情况下,默认的域分隔符是空格。

2.shell脚本方式

将所有的awk命令插入一个文件,并使awk程序可执行,然后awk命令解释器作为脚本的首行,一遍通过键入脚本名称来调用。
相当于shell脚本首行的:#!/bin/sh
可以换成:#!/bin/awk

3.将所有的awk命令插入一个单独文件,然后调用:

awk -f awk-script-file input-file(s)
其中,-f选项加载awk-script-file中的awk脚本,input-file(s)跟上面的是一样的。
复制代码


查询远程服务器存储详细信息

ssh 192.168.1.101 'free -g'

查询远程服务器内存,打印出第3行第4列的内容


ssh 192.168.1.101 'free -g' | awk 'NR==3{print $4}'

定时结束进程(本例5秒后结束)


& { sleep 5; eval 'kill -9 $!';}

查询远程服务器内存,打印出第3行第4列的内容,不管连接远程成功与否都会,5秒后结束


ssh 192.168.1.101 'free -g'| awk 'NR==3{print $4}' & { sleep 5; eval 'kill -9

无法使用awk命令

使用ssh远程执行命令,当使用到awk时总是报错,而sed和grep都没有问题,开始以为awk不支持远程执行。
经过反复测试,找到了解决方法。

举例:ssh 目标IP “awk ‘{print \$1}’文件名”
说明:只要保证ssh使用的是“”,并且awk中的$加上转义即可。

这个恼人的awk的问题,顺利解决了。

热门栏目