/dev/null--Linux系统黑洞,解决控制台的刷屏问题
发布日期:2021-05-09 07:00:21 浏览次数:11 分类:博客文章

本文共 605 字,大约阅读时间需要 2 分钟。

通常控制台在执行某个jar包时,屏幕会刷个不停,直到程序执行完毕,类似这种:

那么就可以编写一个脚本,把输出的内容全部扔进“黑洞”。此脚本模拟在hadoop102和hadoop103两台主机上循环执行jar文件:

#!/bin/bashfor i in hadoop102 hadoop103do    ssh $i "java -jar /opt/module/applog/gmall2020-mock-log-2020-05-10.jar     1>/dev/null 2>/dev/null &"done

解释一下:

  • 标准输入0:从键盘获得输入 /proc/self/fd/0
  • 标准输出1:输出到屏幕(即控制台) /proc/self/fd/1
  • 错误输出2:输出到屏幕(即控制台) /proc/self/fd/2
  • 2>&1:把2的数据传给1
  • 放在最后的&:使命令在后台执行,这样就在前台执行其他的命令
  • /dev/null代表linux的空设备文件,所有往这个文件里面写入的内容都会丢失,俗称“黑洞”。

于是就有了简化版

#!/bin/bashfor i in hadoop102 hadoop103; do    ssh $i "java -jar /opt/module/applog/gmall2020-mock-log-2020-05-10.jar >/dev/null 2>&1 &"done
上一篇:kafka项目经验之如何进行Kafka压力测试、如何计算Kafka分区数、如何确定Kaftka集群机器数量
下一篇:Linux的环境变量配置在/etc/profile或/etc/profile.d/*.sh文件中的区别是什么?

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年04月19日 23时30分04秒