管道(Pipe)是Linux/Unix系统中非常强大的特性,它允许将一个命令的输出直接作为另一个命令的输入。下面我将分享一些实用的管道命令组合案例。
cat file.txt | wc -l
grep "error" logfile.txt | wc -l
ps aux | sort -rnk 3 | head -5
free -m | grep Mem | awk '{print $3/$2 * 100.0}'
netstat -an | grep ESTABLISHED | wc -l
find /path/to/files -mtime +30 | xargs rm -f
ls *.txt | sed 's/\(.*\)\.txt/mv & \1.doc/' | sh
du -sh * | sort -hr
cat access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -10
tail -f /var/log/syslog | grep -i error
cat data.csv | cut -d',' -f1,3 | sort | uniq
curl -s http://example.com/api | jq '.data[] | select(.value > 100)'
for ip in $(cat iplist.txt); do ping -c 1 $ip | grep "bytes from"; done
nmap -sT -p- 192.168.1.1 | grep open | awk '{print $1}'
cat logfile.txt | grep "ERROR" | awk '{print $5}' | sort | uniq -c | sort -nr
cat bigfile.txt | parallel --pipe grep "pattern" | wc -l
ls -l | tee directory_listing.txt | less
netstat -tuln | awk '/^tcp/ {print $4}' | awk -F: '{print $NF}' | sort -n | uniq
这些管道组合展示了Linux命令行的强大功能。通过灵活组合不同的命令,可以高效地完成各种复杂任务。