我有一个文本文件,我试图从中提取以" 422"开头的行。 (每个文件有多个)并将所有这些粘贴到新的文本文件中。我不太确定在vbs或批处理文件中执行此操作是否更好,但这两种方法都可行。提前谢谢。
编辑: 抱歉看起来像是"为我做我的工作"题;我的代码非常简短而且不是很有效,但我会发布到目前为止的内容:
cd"〜%dp1" findstr / B" 422" testfile.txt>> output.txt的
问题是代码没有考虑到422之后的空格,所以我在输出中获得额外的值。
答案 0 :(得分:1)
正如你的问题闻起来像“我需要完成一份工作”并且不喜欢“我想学习(任何事物)”,使用合适的工具,例如: findstr:
type 31392125.txt
a
422b
c
d
e 422
422f
422 g
findstr /B 422 31392125.txt
422b
422f
422 g
阅读docs():
除非参数是,否则使用空格分隔多个搜索字符串 以/ C为前缀。例如,'FINDSTR'你好“x.y”搜索 对于文件x.y中的“hello”或“there” 'FINDSTR / C:“你好”x.y' 在文件x.y中搜索“hello there”。
所以:
findstr /B /C:"422 " 31392125.txt
422 g
答案 1 :(得分:0)
FINDSTR /B 422 "fileToSearch" >>"FileToCopyTo"
没有引号,例如
FINDSTR /B 422 C:\Users\John\Documents\filename.txt >>C:\Users\John\Documents\output.txt