/dev/null--Linux系统黑洞,解决控制台的刷屏问题
通常控制台在执行某个jar包时,屏幕会刷个不停,直到程序执行完毕,类似这种:
那么就可以编写一个脚本,把输出的内容全部扔进“黑洞”。此脚本模拟在hadoop102和hadoop103两台主机上循环执行jar文件:
#!/bin/bash
for i in hadoop102 hadoop103
do
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/bash
for i in hadoop102 hadoop103; do
ssh $i "java -jar /opt/module/applog/gmall2020-mock-log-2020-05-10.jar >/dev/null 2>&1 &"
done
如果真的不知道做什么 那就做好眼前的事情吧 你所希望的事情都会慢慢实现...
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步