我想在后台运行一个程序(GoogleChrome),但是阻止它将任何消息输出到终端。
我试过这样做:
google-chrome 2>&1 1>/dev/null &
但是,终端仍然没有收到如下消息:
5746:5746:0802/100534:错误:对象_proxy.cc(532)调用方法失败:org.chromium.mtpd.EnDigateStorag.
我做错了什么?如何重定向?全输出到/dev/null
?
发布于 2018-05-07 09:32:11
重定向操作符是从左向右评估的。2>&1
首先,哪个点2
在同一个地方1
当前是指向哪个是本地终端屏幕,因为没有重定向。1
现在还没有。需要做的是以下任一项:
2>/dev/null 1>/dev/null google-chrome &
或
2>/dev/null 1>&2 google-chrome &
重定向操作符的位置与命令无关。可以将它们放在命令之前或之后。
发布于 2018-05-07 10:58:01
在本节Redirection
巴什的参考手册说:
操作员
[n]>&word
使用复制输出文件描述符
重定向stderr
和stdout
到file
你应该使用表格
&>file
关于你的案子,这意味着替代
2>&1 1>/dev/null
带着
&>/dev/null
https://stackoverflow.com/questions/-100004481
复制相似问题