tee
我已经尝试使用和在此处>
的示例和问题中将终端输出重定向到文件。它适用于或echo test | tee log.txt
ls -l | tee log.txt
但是当我运行一个命令时,它不起作用(不会在 log.txt 中添加任何内容),比如divine verify file.dve | tee log.txt
wheredivine is an installed tool。有什么想法或替代方案吗?
试试divine verify file.dve 2>&1 | tee log.txt
。如果程序输出到 stderr 而不是 stdout,这会将 stderr 重定向到 stdout。
也适用于ffmpeg输出
{ echo ffmpeg -i [rest of command]; ffmpeg -i [rest of command]; } 2>&1 | tee ffmpeg.txt
和 tee -a 如果文件已经存在则追加
======
另外,如果您想查看文件夹中所有文件的 mediainfo 并确保命令在 mediainfo.txt 中也可见
{ echo mediainfo *; mediainfo *; } 2>&1 | tee mediainfo.txt
注意:{回声命令;命令; } 表示命令保存在 txt 文件中;没有这个就不会打印