运维常用shell

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介:
列出你最常用的10条shell
history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head
history | awk '{a[$4]++}END{for(i in a){print a[$i] " " i}}' | sort -rn | head 
grep -v "#" .bash_history |awk '{++a[$1]}END{for(i in a)print i,a[i]|"sort -k2 -nr"}'  | head
网络连接数目 
netstat -an | grep -E "^(tcp)" | cut -c 68- | sort | uniq -c | sort -n     #查看状态数连接数
netstat -ntu | awk '{print $5"\n"}' | cut -d: -f1 | sort | uniq -c | sort -nr|head -n 20 #统计IP连接数
netstat -an -t | grep ":22" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort | wc -l #进程连接数
取网卡IP
/sbin/ifconfig |sed 's/.*inet addr:\(.*\) Bca.*/\1/g' |sed -n '/br/{n;p}' #双网卡绑定用这个
/sbin/ifconfig |sed 's/.*inet addr:\(.*\) Bca.*/\1/g' |sed -n '/eth/{n;p}' #普通网卡用这个
ifconfig eth0 |grep "inet addr:" |awk '{print $2}'|cut -c 6-  或者 
ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}' 
系统信息统计
dmidecode -t system |grep -E 'Serial'|awk -F':' '{print $2}' (系统序列号查询)
cat /proc/cpuinfo  | grep CPU | awk  -F: '{print $2}' |  sort|uniq -c (cpu核数)
dmidecode -t system |grep 'Product'|awk '{print $3$4}'  (单板设备类型)
dmidecode | grep -P -A 5 'Memory Device' | grep Size | grep -v Range|grep -i -v "no module"|sed -r 's/^\s+//g' | sort|uniq -c (内存大小)
echo `/sbin/ifconfig |sed 's/.*inet addr:\(.*\) Bca.*/\1/g' |sed -n '/eth/{n;p}' ` `hostname` >>/etc/hosts 取IP和主机名定向到/etc/hostname  
系统抓包分析
tcpdump -c 10000 -i eth0 -n dst port 80 > /root/pkts  (tcpdump 抓包 ,用来防止80端口被人攻击时可以分析数据 )
less | awk ' {printf $3"\n"}' | cut -d. -f 1-4 | sort | uniq -c | awk '{printf $1" "$2"\n"}' | sort -n -t\   +0 (然后检查IP的重复数 并从小到大排序 注意 "-t\ +0" 中间是两个空格 )
系统进程管理
ps -eo pid,lstart,etime | grep 26871 (进程运行时间)
lsof -p 10412 (查看进程打开的文件 10412是进程的PID)
ps -e -o "%C : %p : %z : %a"|sort -k5 -nr  (查看进程 按内存从大到小排列 )
 ps -e -o "%C : %p : %z : %a"|sort -nr     (按cpu利用率从大到小排列)
ps aux |grep mysql |grep -v grep |awk '{print $2}' |xargs kill -9  (杀掉mysql进程)
killall -TERM mysqld  杀掉mysql进程:
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | kill -9 杀掉僵死进程
网卡流量
dstat -acdgilmnprstTfy (centos查看网卡流量)
iftop   (suse系统网卡流量)
sar -n DEV 1 10 (suse系统网卡流量)
iotop -o (查看那个进程最磨磁盘)
文件管理
删除0字节文件 
find -type f -size 0 -exec rm -rf {} \; 
查看目录下10个大文件
du -cks * | sort -rn | head -n 10 

du -h --max-depth=1  /home 














本文转自谢无赖51CTO博客,原文链接: http://blog.51cto.com/xieping/1436405,如需转载请自行联系原作者



相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
运维 Java Shell
Linux非常详细的shell运维脚本一键启动停止状态SpringBoot打成可运行jar包
Linux非常详细的shell运维脚本一键启动停止状态SpringBoot打成可运行jar包
601 0
|
运维 Shell C语言
运维(20)- shell awk
运维(20)- shell awk
127 0
|
运维 安全 Shell
运维(18)-shell find
运维(18)-shell find
121 0
|
存储 运维 监控
自动化运维:使用Shell脚本简化日常任务
【9月更文挑战第35天】在IT运维的日常工作中,重复性的任务往往消耗大量的时间。本文将介绍如何通过编写简单的Shell脚本来自动化这些日常任务,从而提升效率。我们将一起探索Shell脚本的基础语法,并通过实际案例展示如何应用这些知识来创建有用的自动化工具。无论你是新手还是有一定经验的运维人员,这篇文章都会为你提供新的视角和技巧,让你的工作更加轻松。
378 2
|
运维 Shell 测试技术
运维(23)- shell自动化部署
运维(23)- shell自动化部署
119 0
|
运维 监控 Shell
自动化运维之宝:编写高效的Shell脚本
【8月更文挑战第31天】在运维的世界里,Shell脚本是一把瑞士军刀,它让日常任务变得简单而高效。本文将通过浅显易懂的语言和实际案例,带你领略Shell脚本的魅力,并教你如何打造属于自己的自动化工具箱。无论你是初学者还是资深运维,这篇文章都将为你打开一扇窗,让你看到不一样的风景。让我们一起探索Shell脚本的世界吧!
|
运维 Linux Shell
day02-Linux运维-系统介绍与环境搭建_硬件 系统核心 解释器shell 外围操作系统
day02-Linux运维-系统介绍与环境搭建_硬件 系统核心 解释器shell 外围操作系统
|
存储 运维 Shell
Shell内置命令大全,Linux运维工程师收藏!
Shell内置命令大全,Linux运维工程师收藏!
597 0
Shell内置命令大全,Linux运维工程师收藏!
|
机器学习/深度学习 运维 Shell
运维(22)- shell开机自启动脚本
运维(22)- shell开机自启动脚本
181 1
|
运维 Linux 网络安全
利用群晖NAS+shell脚本实现运维命令执行结果文件自动上传
利用群晖NAS+shell脚本实现运维命令执行结果文件自动上传
1150 0