• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
白_胖_子
Linux学习的生活就是这么朴实无华且枯燥
博客园    首页    新随笔    联系   管理    订阅  订阅

Linux管道符

管道符

把一个命令生成数据直接传给后边的命令。
经常把一个命令无法处理完的命令使用管道符进行多次处理。

有些命令有标准输出,有些没有

  • 管道符前面必须有标准输出
  • 管道符后面必须有标准输入

CMD1 | CMD2 | ... 将CMD1的标准输出作为CMD2的标准输入

管道符只能传递标准输出,错误、提示是不能传递的。

利用管道命令发邮件

[root@C8-1 ~]# echo "FBI Warning" | mail -s hellow 410109170@qq.com

利用管道把字反过来写

[root@C8-1 ~]# echo "FBI Warning" | rev
gninraW IBF

利用管道把空格换行写

[root@C8-1 ~]# echo "FBI Warning" | tr ' ' '\n'
FBI
Warning

将系统环境变量目录显示在单独一行

[root@C8-1 ~]# echo $PATH | tr ':' '\n'
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/root/bin

把对的变成错的,将标准输出变成标准错误 |&

CentOS6以后才支持 |&的写法,等同于2>1&

[16:32:36 root@C8[ ~]#ls /data /err
ls: cannot access '/err': No such file or directory
/data:
log1..5.text
[16:33:35 root@C8[ ~]#ls /data /err |& tr 'a-z'
tr: missing operand after ‘a-z’
Two strings must be given when translating.
Try 'tr --help' for more information.
* * * 胖并快乐着的死肥宅 * * *
posted @ 2020-06-21 15:49  白_胖_子  阅读(1258)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3