Linux运维常用命令总结
- 删除0字节文件
- 查看进程按内存从大到小排列
- 按cpu利用率从大到小排列
- 查看http的并发请求数及其TCP连接状态
- 如何在编写SHELL显示多行
- 取IP地址
- 检测与3306端口连接的IP地址
- 查看Apache的并发请求数及其TCP连接状态
- 统计所有图片的大小
- 找出当前路径下占用磁盘最多的文件或目录
- 网络负载
- 磁盘I/O负载
- 网络连接数目
- 进程总数
- 查看是否有异常进程出现
- 检查当前登录用户是否登录过多
- 列出以登录用户登录数量
- 清除僵死进程
- tcpdump 抓包 ,用来防止80端口被人攻击时可以分析数据
- 利用上面导出的文件检查IP的重复数 并从小到大排序
- 查看系统自启动的服务
- 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线)
- 匹配国内电话号码
- 匹配ip地址
删除0字节文件
find -type f -size 0 -exec rm -rf {} \;
查看进程按内存从大到小排列
ps -e -o "%C : %p : %z : %a"|sort -k5 -nr
按cpu利用率从大到小排列
ps -e -o "%C : %p : %z : %a"|sort -nr
查看http的并发请求数及其TCP连接状态
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
如何在编写SHELL显示多行
cat << EOF
+--------------------------------------------------------------+
| === Welcome to Tunoff services === |
+--------------------------------------------------------------+
EOF
取IP地址
ifconfig ens33|egrep "inet"|awk '{print $2}'
检测与3306端口连接的IP地址
netstat -an -t | grep ":3306" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort
查看Apache的并发请求数及其TCP连接状态
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
统计所有图片的大小
find / -name *.jpg -exec wc -c {} \;|awk '{print $1}'|awk '{a+=$1}END{print a}'
找出当前路径下占用磁盘最多的文件或目录
du -cks * | sort -rn | head -n 10
网络负载
sar -n DEV
磁盘I/O负载
iostat -x 1 2
网络连接数目
netstat -an | grep -E “^(tcp)” | cut -c 68- | sort | uniq -c | sort -n
进程总数
ps aux | wc -l
查看是否有异常进程出现
top -id 1
检查当前登录用户是否登录过多
who | wc -l
列出以登录用户登录数量
who -q
清除僵死进程
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | kill -9
tcpdump 抓包 ,用来防止80端口被人攻击时可以分析数据
tcpdump -c 10000 -i eth0 -n dst port 80 > /root/pkts
利用上面导出的文件检查IP的重复数 并从小到大排序
less pkts | awk {'printf $3"\n"'} | cut -d. -f 1-4 | sort | uniq -c | awk {'printf $1" "$2"\n"'} |sort -n
查看系统自启动的服务
- centos6
chkconfig --list | awk '{if ($5=="3:on") print $1}'
- centos7
systemctl list-unit-files | awk '{if ($NF=="enabled") print $1}'
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线)
^[a-zA-Z][a-zA-Z0-9_]{4,15}$
匹配国内电话号码
\d{3}-\d{8}|\d{4}-\d{7}
匹配形式如 0511-4405222 或 021-87888822
匹配ip地址
\d+\.\d+\.\d+\.\d+