批处理文件只显示现有文本文件中的几行

时间:2012-01-09 18:38:06

标签: text

您好我一直试图从显示的现有文本中获取几行。这是我一直在尝试的代码。

type C:\SystemInfo1.txt | findstr /C:"OS Name:" | findstr /C:"OS Version:">c:\SystemInfo.txt
c:\systeminfo.txt

这仅适用于'OS Name'。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

试试这个:

type C:\SystemInfo1.txt | findstr /C:"OS Name:" /C:"OS Version:"

关键是只使用findstr一次,但根据需要将多个字符串传递给它。

您可以通过删除“type”命令和管道来进一步简化:

findstr /C:"OS Name:" /C:"OS Version:"  C:\SystemInfo1.txt

如果您要搜索的字符串始终位于一行的开头,这可以帮助您克服您评论的问题(操作系统与BIOS):

findstr /R "^OS (Version|Name)" C:\SystemInfo1.txt

这是使用正则表达式在行的开头搜索“OS”,然后是“Version”或“Name”。