journalctl --verify输出重定向后文件为空,如何正确保存输出?
问题原因与解决方法
你遇到的问题很常见——journalctl --verify的输出内容是发送到标准错误流(stderr),而不是标准输出流(stdout)。我们平时用的>符号默认只重定向stdout,所以控制台还能看到输出,但test.log里就没有内容了。
这里给你几个可行的解决方法:
同时重定向标准输出和标准错误到文件:
这是最常用的方式,把所有输出都写入test.log:journalctl --verify > test.log 2>&1或者用bash的简化写法,效果完全一致:
journalctl --verify &> test.log仅重定向标准错误到文件(如果需要保留stdout在控制台):
如果你只想把验证相关的信息写入文件,而其他stdout内容留在控制台,可以用:journalctl --verify 2> test.log
你可以先在终端直接运行journalctl --verify 2>&1,确认所有输出都能正常显示,再执行重定向命令,这样就能确保test.log里有内容啦。
内容的提问来源于stack exchange,提问作者O_O
相关产品推荐
相关产品推荐

