插件窝 干货文章 Linux管道命令实战:实用案例分享

Linux管道命令实战:实用案例分享

bash 管道 命令 文件 206    来源:    2025-04-10

Linux管道命令实战:实用案例分享

管道(Pipe)是Linux/Unix系统中非常强大的特性,它允许将一个命令的输出直接作为另一个命令的输入。下面我将分享一些实用的管道命令组合案例。

基础管道操作

  1. 基本统计文件行数
cat file.txt | wc -l
  1. 查找并计数
grep "error" logfile.txt | wc -l

系统监控相关

  1. 查看占用CPU最高的进程
ps aux | sort -rnk 3 | head -5
  1. 查看内存使用情况
free -m | grep Mem | awk '{print $3/$2 * 100.0}'
  1. 监控网络连接数
netstat -an | grep ESTABLISHED | wc -l

文件处理

  1. 查找并删除旧文件
find /path/to/files -mtime +30 | xargs rm -f
  1. 批量重命名文件
ls *.txt | sed 's/\(.*\)\.txt/mv & \1.doc/' | sh
  1. 统计目录大小并排序
du -sh * | sort -hr

日志分析

  1. 分析Apache访问日志
cat access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -10
  1. 实时监控日志
tail -f /var/log/syslog | grep -i error

数据处理

  1. CSV文件处理
cat data.csv | cut -d',' -f1,3 | sort | uniq
  1. JSON数据处理
curl -s http://example.com/api | jq '.data[] | select(.value > 100)'

网络相关

  1. 批量ping测试
for ip in $(cat iplist.txt); do ping -c 1 $ip | grep "bytes from"; done
  1. 检查开放端口
nmap -sT -p- 192.168.1.1 | grep open | awk '{print $1}'

高级技巧

  1. 多级管道处理
cat logfile.txt | grep "ERROR" | awk '{print $5}' | sort | uniq -c | sort -nr
  1. 并行处理加速
cat bigfile.txt | parallel --pipe grep "pattern" | wc -l
  1. 使用tee同时输出到文件和屏幕
ls -l | tee directory_listing.txt | less
  1. 结合awk进行复杂处理
netstat -tuln | awk '/^tcp/ {print $4}' | awk -F: '{print $NF}' | sort -n | uniq

这些管道组合展示了Linux命令行的强大功能。通过灵活组合不同的命令,可以高效地完成各种复杂任务。