我有一个文件example.txt和一个字符串“ Hi”以及第15行的开头。
findstr所需的代码应为:
findstr /b /n "Hi" "example.txt"
有什么东西只能在命令行(此处为15)中搜索“ Hi”字符串。
请帮忙 !
如何使用FINDSTR在特定行中搜索?
findstr所需的代码应为:
findstr /b /n "Hi" "example.txt"
有什么东西只能在命令行中搜索“ Hi”字符串吗?
根据您问题的措辞,我将假设一些事情:
FINDSTR
使用的/B
是“ Hi”的you字符串,因此仅在该行的开头,然后在其后接一个空格,用于表示其他单词。/N
swtich,因此我假设您仅使用它来打印找到匹配的字符串的行,因此可以运行aboutFINDSTR
命令然后仅获取第15行。这是一些执行此操作的示例命令(非批处理)
(一旦插入相应的变量即可简单地复制和粘贴所有这些行,从而无需批处理脚本即可运行。)
SET SearchFile=C:\Path\example.txt
SET TmpSearchFile=%Temp%\~tmpSearch00.txt
SET String=Hi
SET LineNum=15
FINDSTR /B /N "%String%" "%SearchFile%" > "%TmpSearchFile%"
FOR /F "USEBACKQ TOKENS=2 DELIMS=: " %A IN (`"FINDSTR /B "%LineNum%:%String%" "%TmpSearchFile%""`) DO ECHO %~A
基本上FINDSTR
,这将在所有行的开头将匹配字符串的行号的第一个管道输送到临时文件(如果存在,则将其覆盖)。然后,它在该临时文件中搜索行号的字符串,再加上冒号和字符串(即“ 15:Hi”)。后来,我用了一个FOR /F
循环使得colon
与space
该delimiter
用token
的2
。然后,它将ECHO
仅按您的要求字符串(ECHO
如果需要,请用其他命令替换)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句