Sorting 如何禁用findstr对输出进行排序?
我将命令的输出管道化到findstr,以提取某些行。这是我的密码:Sorting 如何禁用findstr对输出进行排序?,sorting,batch-file,findstr,alphabetical-sort,Sorting,Batch File,Findstr,Alphabetical Sort,我将命令的输出管道化到findstr,以提取某些行。这是我的密码: example_command.exe | findstr /C:"string_D " /C:"string_B " /C:"string_C " /C:"string_A " 是的,字符串文本后有两个空格。我期望输出为: string_D string_B string_C string_A 然而,我得到: string_A string_B string_C string_D findstr似乎正在按字母顺序
example_command.exe | findstr /C:"string_D " /C:"string_B " /C:"string_C " /C:"string_A "
是的,字符串文本后有两个空格。我期望输出为:
string_D
string_B
string_C
string_A
然而,我得到:
string_A
string_B
string_C
string_D
findstr似乎正在按字母顺序对输出进行排序。可以禁用吗?我希望它以我输入的相同顺序输出
我想用标准的Windows7命令来实现这一点,这样我就可以轻松地在批处理文件中分发它
我可以分离字符串并运行example_command.exe四次,但这需要四倍的时间
这是findstr的另一个未记录的功能吗?当它几乎多次运行example_command.exe时,这应该会为您提供所需的输出
example_command.exe | findstr /C:"string_D " && example_command.exe | findstr /C:"string_B " && example_command.exe | findstr /C:"string_C " && example_command.exe | findstr /C:"string_A "
但是,正如您所说,这将花费4倍的时间。虽然它几乎多次运行example_command.exe,但这应该会为您提供所需的输出
example_command.exe | findstr /C:"string_D " && example_command.exe | findstr /C:"string_B " && example_command.exe | findstr /C:"string_C " && example_command.exe | findstr /C:"string_A "
但是,正如您所说,这将花费4倍的时间。我想您会发现,
findstr
在命令文本中按字符串的顺序返回字符串。我同意,尝试不使用findstr的命令,然后查看行的显示顺序,findstr只需要获取一个流,并输出与模式匹配的任何给定内容,并且按照给定的顺序输出现在我看了一下,您是对的,原始流是按字母顺序排列的。谢谢你的洞察力!我想您会发现,findstr
在命令文本中按字符串的顺序返回字符串。我同意,在不使用findstr的情况下尝试该命令,看看行的显示顺序,findstr只接收一个流,并输出与模式匹配的任何给定内容,以及给定的顺序。;)现在我看了一下,您是对的,原始流是按字母顺序排列的。谢谢你的洞察力!谢谢,我想我得忍受更长的输出时间了。我还意识到我可以输出到一个临时文件,然后在上面运行findstr,然后删除临时文件。谢谢,我想我将不得不忍受更长的输出时间。我还意识到我可以输出到一个临时文件,然后对其运行findstr,然后删除临时文件。