awk
文本三剑客最后一个命令
grep 过滤(查)
sed 增删改查 增和改
awk 按行取列
awk默认的分隔符 : 既是空格 也可以是一个TAB键 多个空格自动压缩成一个空格
awk的工作原理 :根据指令信息,逐行的读取文本内容,然后按照条件进行格式化输出。
awk的选项:
-F 指定分隔符 默认就是空格
-V 变量复制
内置变量:
$#(数字): 按行需要取出的第几个字段
$0 打印所有展示文本内容 (默认)
NR :需要处理的行号
NF : 处理行的字段个数,$NF:当前行的最后一字段
FS :和F一样的 都是指定分隔符。 -F: FS=":"
OFS: 指定输出内容的分隔符。
RS: 行分隔符,可以根据RS的设置把文件内容切割成多个记录,也可以改变行的分隔符,默认是\n,回车,换行
awk -F'操作符{动作}'处理对象
-F 指定分隔符 如果是空格可以不加
动作: 默认打印 print
打印奇偶行
#指定分隔符
awk怎么使用文本过滤
#BEGIN打印模式
awk 'BEGIN{...};{...};END{...}' 文件
BEGIN{...} :表示预先的条件 执行awk命令前的初始化操作
第二个{...} :处理条件如何对初始值进行操作
END{...} :处理完之后的操作 一般都是打印
区幂运算
awk的条件判断打印
awk的三元表达式 : 面试题
if
else 语句0
例题 awk -F: '{num=($3>$4)?$3:$4;{print num,$0}}' /etc/passwd
num=($3>$4)?$3:$4;
? if
: else
; fi
awk的精确筛选:
$n(> < ==)用于比较数值大小
$n~"字符串" 表示该字段包含某个字符串
$n!~"字符串" 该字段不包含某个字符串
$n=="字符串" 该字段等于这个字符串
$n!="字符串"该字段不等于这个字符串
$NF 代表最后一个字段
逻辑且
逻辑或
curl 是一个功能强大的命令
获取和发送数据
curl 可以跟域名或ip地址
获取网页内容并且输出
curl -O 下载文件到文本
curl -o 将文件下载到指定路径
curl -x 发送post请求
curl -i 可以获取web软件的版本 (服务端没有隐藏版本号)
* awk按行取列 awk的精确筛选 awk 的运算符**
#取小数点几位以及小数运算怎么取整数
1 www.kgc.com
2 mail.kgc.com
3 ftp.kgc.com
4 linux.kgc.com
5 blog.kgc.co
#主机名取出来 使用awk
#统计/etc文件的总大小
#作业 监控内存 cpu 和硬盘的根目录 超过80%提示用户,写成函数库的形式每天早上的8点50分 执行一次脚本
#cpu #内存 #硬盘容量