grep [选项] 参数
[选项]
-E
-i
-o
-v
-A
-B
-C
-n
-w
-c
[root@web2 ~]# grep -vE '^$|#' /etc/mail.rc 排除文件空行和#开头的
find 路径 条件
[条件]
-name "xxx"
-type d|f|xxx
-inum
-mtime
sed [选项] [sed内置命令字符] 文件
【选项】
-n 取消默认输出
-i 修改文件,而不是 输出到终端
【内置命令字符】
s 替换
g 全局替换
p 打印
d 删除
-a 增加(下一行)
-i 插入,此行的前面(上一行)
-e 多次编辑
'2,8p' 输出2-8行
'2,5d' 删除2-5行
awk 【参数】 '条件 {动作}' 文件
【参数】
-F 指定分隔符
条件
/要匹配的内容/
NR==XX 第xx行
NR>XX 行数大于xx的
NR<XX
NR>XX && NR<XX
动作
print 1 输出第一列
NF 输出最后一列
$(NF-1) 输出倒数第二列
nginx访问日志查询相应ip 时间 状态码 去重 排序
332 tail -f /var/log/nginx/access.log |awk '{print $1}'|sort -nr|uniq |wc -l
333 awk '{print $1}' /var/log/nginx/access.log
334 awk '{print $1}' /var/log/nginx/access.log |sort -nr
335 awk '{print $1}' /var/log/nginx/access.log |sort -nr |uniq
336 awk '{print $1}' /var/log/nginx/access.log |sort -nr |uniq|wc -l
337 awk '{print $1}' /var/log/nginx/access.log |sort -nr |uniq|head 1
338 awk '{print $1}' /var/log/nginx/access.log |sort -nr |uniq|head -1
339 awk '{print $1}' /var/log/nginx/access.log |sort -nr |uniq|head -3
340 awk '{print $1}' /var/log/nginx/access.log |sort -nr |uniq|head -2
341 awk '{print $9}' //var/log/nginx/access.log
342 awk '{print $9}' //var/log/nginx/access.log|grep 304
343 awk '{print $9}' //var/log/nginx/access.log|grep 304|wc -l
344 awk '{print $9}' //var/log/nginx/access.log|grep 200|wc -l
345 awk '{print $4,$9}' //var/log/nginx/access.log|grep 200|wc -l
346 awk '{print $4,$9}' //var/log/nginx/access.log|grep 200
347 awk '{print $4,$9}' //var/log/nginx/access.log|grep 200|tail -10
348 awk '{print $0}' //var/log/nginx/access.log|grep 200|tail -10
349 awk '{print $4,$9}' //var/log/nginx/access.log|grep 200|tail -10
350 awk '{print $4,$9}' //var/log/nginx/access.log|grep 200|tail -10|wc -l
351 awk '{print $4,$9}' //var/log/nginx/access.log|grep 200|wc -l
352 awk '{print $4,$9}' //var/log/nginx/access.log|wc -l
353 awk '{print $4,$9}' //var/log/nginx/access.log|sort|wc -l
354 awk '{print $4,$9}' //var/log/nginx/access.log|sort|uniq|wc -l
355 awk '{print $4,$9}' //var/log/nginx/access.log|sort|uniq
356 awk '{print $9}' //var/log/nginx/access.log|sort|uniq
357 awk '{print $1}' //var/log/nginx/access.log|sort|uniq
查询nginx是否正常运行
[root@web1 ~]# ps -ef |grep nginx|wc -l
3
可以写进脚本+定时任务实时监控nginx服务状态,后期加入邮件报警服务
在脚本中检测到nginx服务宕机,立即执行邮件报警并且尝试重启nginx服务
71 rpm -qa mailx
73 vim /etc/mail.rc
set bsdcompat
set from=1769966051@qq.com
set smtp=smtps://smtp.qq.com:465
set smtp-auth-user=17699660@qq.com
set smtp-auth-password=nduabxksfjnbecae
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/etc/pki/nssdb/
74 mail -s "传送来的文件检查报告" syq17699660@163.com < 3.txt
定时任务+时间同步
83 yum install ntpdate
85 timedatectl set-timezone Asia/Shanghai
86 systemctl start ntpdate.service
87 systemctl enable ntpdate.service
89 date -s 2019-12-11
90 date
91 ntpdate ntp1.aliyun.com
92 date
93 hwclock
ssh生成秘钥,免密登录传输
ssh-keygen
发送给要登录的
ssh-copy-id -i ~/.ssh/id_rsa.pub root@172.16.1.31
1.要知道那台服务器的密码
2.将你的公钥放置对应服务器的对应目录下即可
防火墙开发服务
firewall-cmd --permanent --add-service=ssh --add-service=http
firewall-cmd --reload
firewall-cmd --list-service
nginx配置证书
[root@web01 conf.d]# mkdir /etc/nginx/ssl_key
[root@web01 conf.d]# cd /etc/nginx/ssl_key/
#### firewall一条命令实现共享上网
1.一条命令开启共享上网
[root@manager ~]# firewall-cmd --add-masquerade
2.客户端将默认网关指向---> 能上网的地址
[root@web01 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
IPADDR=172.16.1.7
GATEWAY=172.16.1.61
DNS1=223.5.5.5
PREFIX=24
dd磁盘压力测试
dd if=/dev/zero of=/extra_disk/disk2/c bs=8k count=20000000
说明:
向/extra_disk/disk2/c文件写入内容全部为0的文件,每次写8K,写20000000次。
ab压力测试
ab -c 30 -n 100 http://192.168.115.120/
说明:指定的并发量为30每秒,总共请求100次
#### md5sum验证指纹
```l
64 echo dwidwidi >2.txt
65 cat 2.txt
66 md5sum 2.txt >3.txt
67 cat 3.txt
68 scp 2.txt 3.txt 10.0.0.9:/root/
验证
60 ls
61 cat 1.txt
62 ls
63 cat 2.txt
64 cat 3.txt
65 md5sum -c 3.txt
2.txt: OK
#### 比较俩文件vimdiff
```l
vimdiff disk.sh ip.sh
#### nc -kl 端口号-----------添加端口命令
- 01 前提,ecs开放了所有端口,命令行测试ss -lntup
- 02 在命令行输入nc -kl 9999-------9999端口
- 03 让后在复制窗口测试9999端口是否存在
- 04 未连接的窗口测试telnet 47.114.4.107 9999
- 05 在nc创建端口位置输入内容xxx,在telnet端查看端口连接