使用批处理或 vbs 从文本文件中提取行
Extract lines from a text file using batch or vbs
我有一个文本文件,我正在尝试从中提取以“422”开头的行(每个文件有多个)并将所有这些粘贴到一个新的文本文件中。我不太确定在 vbs 或批处理文件中执行此操作是否更好,但两者都可以。提前致谢。
编辑:
抱歉看起来像一个 "do my work for me" 问题;我的代码真的很短而且不是很有效,但我会 post 我目前所拥有的:
cd "~%dp1"
findstr /B "422 " testfile.txt >> output.txt
问题是代码没有考虑 422 之后的空格,所以我在输出中得到了额外的值。
由于您的问题闻起来像 "I need a job done" 而不像 "I want to learn (anything at all)",因此请使用合适的工具,例如findstr:
type 31392125.txt
a
422b
c
d
e 422
422f
422 g
findstr /B 422 31392125.txt
422b
422f
422 g
阅读文档 ():
Use spaces to separate multiple search strings unless the argument is
prefixed with /C. For example, 'FINDSTR "hello there" x.y' searches
for "hello" or "there" in file x.y. 'FINDSTR /C:"hello there" x.y'
searches for "hello there" in file x.y.
所以:
findstr /B /C:"422 " 31392125.txt
422 g
FINDSTR /B 422 "fileToSearch" >>"FileToCopyTo"
没有引号,例如
FINDSTR /B 422 C:\Users\John\Documents\filename.txt >>C:\Users\John\Documents\output.txt
我有一个文本文件,我正在尝试从中提取以“422”开头的行(每个文件有多个)并将所有这些粘贴到一个新的文本文件中。我不太确定在 vbs 或批处理文件中执行此操作是否更好,但两者都可以。提前致谢。
编辑: 抱歉看起来像一个 "do my work for me" 问题;我的代码真的很短而且不是很有效,但我会 post 我目前所拥有的:
cd "~%dp1" findstr /B "422 " testfile.txt >> output.txt
问题是代码没有考虑 422 之后的空格,所以我在输出中得到了额外的值。
由于您的问题闻起来像 "I need a job done" 而不像 "I want to learn (anything at all)",因此请使用合适的工具,例如findstr:
type 31392125.txt
a
422b
c
d
e 422
422f
422 g
findstr /B 422 31392125.txt
422b
422f
422 g
阅读文档 ():
Use spaces to separate multiple search strings unless the argument is prefixed with /C. For example, 'FINDSTR "hello there" x.y' searches for "hello" or "there" in file x.y. 'FINDSTR /C:"hello there" x.y' searches for "hello there" in file x.y.
所以:
findstr /B /C:"422 " 31392125.txt
422 g
FINDSTR /B 422 "fileToSearch" >>"FileToCopyTo"
没有引号,例如
FINDSTR /B 422 C:\Users\John\Documents\filename.txt >>C:\Users\John\Documents\output.txt