管道(Pipe)是Linux/Unix系统中一个强大的特性,它允许将一个命令的输出作为另一个命令的输入。管道使用竖线符号|
表示,可以将多个命令连接起来,形成数据处理流水线。
command1 | command2 | command3 ...
# 查看进程并过滤出包含"nginx"的进程
ps aux | grep nginx
# 查看日志文件最后100行并过滤错误信息
tail -n 100 /var/log/syslog | grep -i error
# 统计当前目录下文件数量
ls | wc -l
# 统计文件中单词出现频率
cat file.txt | tr ' ' '\n' | sort | uniq -c | sort -nr
# 提取文件的第5列数据并排序
cut -d',' -f5 data.csv | sort
# 将输出转换为大写
echo "hello world" | tr '[:lower:]' '[:upper:]'
# 查看内存使用情况并排序
free -h | grep Mem | awk '{print $3/$2 * 100.0}'
# 监控网络连接数
netstat -an | grep ESTABLISHED | wc -l
ls -l | tee filelist.txt | less
find . -name "*.log" | xargs rm
# 提取CPU使用率
top -b -n 1 | grep "Cpu(s)" | awk '{print $2 + $4 "%"}'
# 替换文本中的字符串
cat config.txt | sed 's/old/new/g' > newconfig.txt
2>&1
重定向通过灵活组合这些管道命令,可以高效地完成各种数据处理和系统管理任务。