我有一个命令行工具,通常会输出大约200多行的内容。我正在寻找出现在这些输出末尾的文本。当我将输出重定向到文件时:
C:\> somecommand > results.txt 2>&1
只有前100行左右的输出内容会显示在这个文件中。同样,如果我将输出管道传输到类似于“findstr”之类的程序中,接收程序将无法找到或操作100行后的任何文本。
外壳的屏幕缓冲区大小设置似乎对可以捕获的行数没有任何影响。
这里发生了什么?值得一提的是,所涉及的命令是来自InstallShield 2012的iscmdbld.exe。
其他我尝试过的命令(如'dir')不会出现这个问题。
只有在cmd窗口内运行命令时才能查看程序的完整输出。
> results.txt 2>&1 somecommand
- SeanC