默认情况下,如果您执行以 结尾的后台进程&
,例如./test &
,输出将打印在当前终端中。除了直接输出之外,
如何将输出重定向到寻呼机,就像它完成运行时一样?less
答案1
最简单的方法:将输出重定向到文件。当命令执行完毕后,查看less
.
./test.sh >test.out &
less test.out
即使命令不在后台运行,这在某些情况下也很有用,例如编译大型项目时:
$ make >make.out 2>make.err
或者
$ make >make.log 2>&1
然后,您可以在自己的时间检查输出以查找错误等(或将其作为错误报告的一部分发送给开发人员),而无需在终端中上下滚动。
答案2
你可以使用这个:(./test | less) &
。
当执行完成后,less
将在后台暂停。然后您所要做的就是使用fg
来显示 的输出less
。
括号不是强制性的(如果需要,您可以将其删除),但它们使命令看起来更清晰。