4.22 运维主要工作内容,awk 使用

核心

1 数据不丢失
2 网站 7*24小时运行
3 提升用户体验

实际具体职责

监控:
1 查看网站监控 网站状态 网站流量
2 根据监控提示 (邮件 微信 电话)进行处理
3 备份 (配置 脚本 数据 网站程序代码) 检查备份是否能用
4 进行代码上线
5 根据需求做项目 (备份 优化 监控)

awk

awk '$3~/查找的内容/' 某一列的什么内容
第二列有oldboy的行

[root@lalala ~]# awk  '$2~/oldboy/'  oldboy01/oldboy.txt
 am oldboy teacher!
oldboy oldboy oldboy

显示第二列有oldboy的行的第一列

[root@lalala ~]# awk  '$2~/oldboy/{print$1,$2}'         oldboy01/oldboy.txt
am oldboy
oldboy oldboy

显示倒数第一列NF-1) 需要括号证明他是一个整体

[root@lalala /oldboy]# awk -F:  '{print$(NF-1)}'  passwd.txt 
/root
/bin
/sbin
/var/adm

在awk中print后面双引号写什么,屏幕显示什么

[root@lalala /oldboy]# awk -F: '{print$1","$2","$3}'  passwd.txt
root,x,0
bin,x,1
daemon,x,2
adm,x,3

{gsub(/换掉什么/,“换成什么”);print $0} 替换

[root@lalala /oldboy]# awk -F: '{gsub(/x/,"1");print$0}' passwd.txt 
root:1:0:0:root:/root:/bin/bash
bin:1:1:1:bin:/bin:/sbin/nologin
daemon:1:2:2:daemon:/sbin:/sbin/nologin

只替换第二列
awk -F:‘{gsub(/1/,"x" 0

[root@lalala /oldboy]# awk -F: '{gsub(/x/,"1",$2);print $2}'  passwd.txt 
1
1
1

调换第一列和最后一列的内容
awk “{tmp=1=NF=tmp;print$0}'

[root@lalala /oldboy]# awk -F:  '{tmp=$1;$1=$NF;$NF=tmp;print$0}'  passwd.txt 
/bin/bash x 0 0 root /root root
/sbin/nologin x 1 1 bin /bin bin
/sbin/nologin x 2 2 daemon /sbin daemon

-v 修改awk的内置变量
范围
awk ’NR==1,NR==5’

[root@lalala /oldboy]# awk 'NR==1,NR==3' passwd.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

BEGIN{}里面的内容会在awk读取文件之前运行

[root@lalala /oldboy]# awk -F: 'BEGIN{print "name"} {print$1}' passwd.txt 
name
root
bin
daemon
adm

计算
awk BEGIN{N*N}

[root@lalala /oldboy]# awk 'BEGIN{print 23*45}'
1035

END{} 里面的内容在awk读取内容后运行

[root@lalala /oldboy]# awk '/^$/{i=i+1}END{print i} '  /root/oldboy01/oldboy.txt
7

统计有多少空行
计算公式 i=i+1 或 i ++
计算某一列所有数值相加

[root@lalala /oldboy]# seq 10|awk '{i=i+$1}END{print i}'
55

你可能感兴趣的:(4.22 运维主要工作内容,awk 使用)