unix 不使用tee将输出从命令重定向到终端和文件

wqsoz72f  于 2022-11-04  发布在  Unix
关注(0)|答案(1)|浏览(178)

顾名思义,我想在不改变终端行为的情况下将命令的输出记录到一个文件中。我仍然希望看到输出,更重要的是,我仍然需要能够进行输入。
输入要求是我不能使用tee的原因。我正在使用的应用程序在使用tee时不能正确处理输入。(不,我不能修改应用程序来解决这个问题)。我希望一个更基本的方法,用'〉'重定向来解决这个问题。
从理论上讲,这应该完全按照我想要的那样工作,但是,就像我说的,它没有。

command | tee -a foo.log

还请注意,我添加了-a标志。并不是严格要求的,因为我肯定可以做一个变通,但如果这也是一个功能,那就太好了。

kjthegm6

kjthegm61#

使用script

% script -c vi vi.log
Script started, output log file is 'vi.log'.
... inside vi command - fully interactive - save the file, takes to:
Script done.
% ls -l vi.log
-rw-r--r-- 1 risner risner 889 Sep 13 15:16 vi.log

相关问题