企业项目管理、ORK、研发管理与敏捷开发工具平台

网站首页 > 精选文章 正文

Linux运维工程师必知必会的10个命令行组合

wudianyun 2025-03-26 17:53:47 精选文章 38 ℃

head

1. 日志分析:统计HTTP状态码分布

awk '{print $9}' access.log | sort | uniq -c | sort -nr | head -n 5
  • 功能:快速统计日志中HTTP状态码的出现次数,按降序排列并显示前5个。
  • 解析
    • awk提取日志第9列(状态码);
    • sort排序后通过uniq -c去重并计数;
    • sort -nr按数值倒序排列;head取前5结果。

2. 查找并删除大文件

find /var/log -type f -size +100M -exec rm -f {} \;
  • 功能:清理指定目录下超过100MB的日志文件。
  • 解析
    • find定位目标路径及文件大小;
    • -exec参数直接执行删除操作,避免二次确认。

3. 实时监控网络端口占用

netstat -tuln | grep ':80' | awk '{print $7}' | cut -d/ -f1
  • 功能:查看占用80端口的进程PID。
  • 解析
    • netstat列出网络连接;
    • grep过滤端口;
    • awkcut提取进程ID。

4. 统计TCP连接状态

netstat -ant | awk '/^tcp/ {print $6}' | sort | uniq -c | sort -nr
  • 功能:统计各TCP状态(如ESTABLISHED、TIME_WAIT)的连接数。
  • 解析
    • netstat显示所有TCP连接;
    • awk提取状态列;sortuniq计数。

5. 动态追踪日志更新

tail -f /var/log/nginx/error.log | grep -E '500|503'
  • 功能:实时监控Nginx错误日志中的500或503错误。
  • 解析
    • tail -f实时跟踪日志;
    • grep -E多条件过滤。

6. 批量修改文件权限

find /data/web -type f -name "*.php" -exec chmod 644 {} \;
  • 功能:递归修改/data/web目录下所有PHP文件权限为644。
  • 解析
    • find筛选文件;
    • -exec执行chmod命令。

7. 自动化备份MySQL数据库

mysqldump -u root -p'password' dbname | gzip > /backup/dbname_$(date +%F).sql.gz
  • 功能:备份数据库并压缩存储,文件名包含日期。
  • 解析
    • mysqldump导出数据;
    • gzip压缩节省空间;
    • date动态生成日期标签。

8. 系统资源监控(CPU/内存)

top -bn1 | grep "Cpu(s)" | awk '{print "CPU使用率: " 100-$8 "%"}'; free -m | awk '/Mem/ {print "内存剩余: "$4"MB"}'
  • 功能:一键输出CPU空闲率和剩余内存。
  • 解析
    • top -bn1非交互式获取CPU数据;
    • free提取内存信息。

9. 批量终止进程

ps aux | grep 'node' | grep -v grep | awk '{print $2}' | xargs kill -9
  • 功能:强制终止所有包含"node"关键字的进程。
  • 解析
    • psgrep筛选目标进程;
    • awk提取PID;xargs传递参数给kill

10. 网络测速与文件下载

wget --limit-rate=1M -O /dev/null http://example.com/largefile.iso
  • 功能:测试下载速度并限制带宽为1MB/s。

还是那句话:干中学,学中干

如果觉得不错的话,麻烦点个关注,收藏谢谢。

毕竟:

我太想进步了

Tags:

最近发表
标签列表