基本概念
管道符 |
将前一个命令的标准输出连接到后一个命令的标准输入,适合数据流式处理。
ls -l | grep "txt"
命令替换 $()
将括号中的命令结果作为字符串返回,用于动态参数、变量赋值等。
echo "当前用户是:$(whoami)"
实际案例
案例1: 获取用户名
# 命令替换
echo "你好, $(whoami)!"
# 错误示例:管道无法传给 echo
whoami | echo "Hello"
案例2: 统计.log 文件个数
# 管道方式
ls *.log | wc -l
# 命令替换方式(文件名含空格可能出错)
wc -l $(ls *.log)
对比总结表
结语
✅ 管道适合连续处理数据;
✅ 命令替换适合提取结果嵌入语句;
🧠 搭配使用更能发挥 Shell 的强大威力!