在screen命令中重定向stdout

wjt*_*jtk 1 bash

我想重定向stdout并在屏幕上运行命令.例如,我有简单的命令:

echo yo | tee yo.log
Run Code Online (Sandbox Code Playgroud)

现在我想在屏幕上运行它:

screen -dmS screenName echo yo | tee yo.log
Run Code Online (Sandbox Code Playgroud)

这不起作用,因为管道将重定向屏幕输出,而不是我的命令(回声).如何修复它以查看我的echo输出文件?

mjc*_*jcs 5

尝试:

screen -dm bash -c"echo yo | tee yo.log"

这个帖子上找到

  • 这里的关键(这在各种问题中都是如此)是`|`需要在*内部*由屏幕运行的命令,而不是由运行`screen`的shell看到的. (3认同)