如何检查某些字符串*是否与批处理中的特定单词一起启动*

时间:2013-02-03 14:49:42

标签: string batch-file

如何批量检查某个字符串(记录的文本文件中的行) 是否已启动

我知道如何检查句子/行(字符串)中是否存在单词(子字符串), 但是我如何用这个词检查天气呢?

谢谢:)

1 个答案:

答案 0 :(得分:8)

可以使用FINDSTR完成此操作:

FINDSTR "^searchterm"

搜索表达式开头的^指定您在一行的开头专门查找子字符串。

请注意,默认情况下FINDSTR会执行区分大小写的搜索。要搜索不管字母大小写,请指定/I开关:

FINDSTR /I "^searchterm"

可以指定搜索源:

  • 作为参数:

    FINDSTR /I "^searchterm" filename
    
  • 使用stdin重定向:

    FINDSTR /I "^searchterm" < filename
    
  • 使用管道:

    command | FINDSTR /I "^searchterm"
    

    (在这种情况下,源是command

    的输出

如果要搜索多个文件,特别是如果它们位于同一目录或目录树中,则最简单的方法是使用上述三个文件中的第一个模式,因为 filename 在这种情况下可以是面具:

FINDSTR /I "^searchterm" D:\path\to\files*.ext

以上内容仅搜索指定目录中的文件。要搜索整个树,即包括所有子目录,请添加/S开关:

FINDSTR /I /S "^searchterm" D:\path\to\files*.ext

其他有用的选项可以在内置帮助中找到(运行FINDSTR /?)。