我有一个 Windows 批处理脚本,它将在文件中查找字符串
find /i "WD6" %Inputpath%file.txt
if %errorlevel% == 0 GOTO somestuff
目前,这就是我的代码的样子。我遇到了一个新字符串,我想在同一个文件中搜索,如果找到它,则执行相同的操作,它将它存储在一个名为的变量中%acctg_cyc%
我可以在一行代码中搜索两个字符串吗?我试过这个:
find /i "WD6" %acctg_cyc% %Inputpath%file.txt
if %errorlevel% == 0 GOTO somestuff
但它似乎忽略了%acctg_cyc%,只在file.txt中查找“WD6”。我尝试测试在哪里%acctg_cyc%
位于 file.txt 中,当不在 file.txt 中时,两次都会通过。
有什么想法吗?我知道我可以用更多行代码来完成此操作,但我现在确实想避免这种情况。也许这是不可能的。
感谢您的任何帮助!
find
不是很强大。它只搜索一个字符串(即使它是两个单词):find "my string" file.txt
寻找字符串my string
.
findstr
拥有更多的力量,但你必须小心如何使用它:
findstr "hello world" file.txt
查找任何包含以下任一内容的行hello
or world
或两者皆有。
see findstr /?
了解更多信息。
使用(find 或 findstr)可以在一行中查找两个单词:
find "word1" file.txt|find "word2"
查找分散在文件中的两个单词(find 或 findstr):
find "word1" file.txt && find "word2" file.txt
if %errorlevel%==0 echo file contains both words
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)