查找文件所有行开头的字符串并保存到另一个文件

查找文件所有行开头的字符串并保存到另一个文件

我尝试了很多方法,但都失败了。我真的很想用批处理文件来完成这个任务,但我的尝试没有得到想要的结果。

我尝试了很多不同的命令,findstr但它似乎把所有内容都写在一行中,而且有时字符看起来很奇怪。

我的一次失败尝试

findstr /i /n "\<JH*\>" c:\Users\Desktop\split\file.txt > JH.tx

我需要在一个.csv文件中找到以“杰华“并仅将这些保存到新.csv文件中。

要搜索的 CSV 文件示例

JH009,20,John May.pdf
PB184,90,Chicken.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf 
PB091,10,Mice.pdf
PB884,1040,Cat Order.pdf

新输出 CSV 文件中的预期结果

JH009,20,John May.pdf 
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf

答案1

您可以使用查找字符串命令与/B开关一起告诉它匹配您搜索的文件中行开头的模式。如果模式不区分大小写,则使用开关,/I否则只需从命令中省略它即可实现字符串的区分大小写的模式匹配。

句法

FindStr /I /B "JH" "c:\Users\Desktop\split\file.txt" > "JH.csv"

搜索文件

JH009,20,John May.pdf
PB184,90,Chicken.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf
PB091,10,Mice.pdf
PB884,1040,Cat Order.pdf

FindStr 命令输出

JH009,20,John May.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf

更多资源

  • 查找字符串

  • FindStr /?

    /B         Matches pattern if at the beginning of a line.   
    /I         Specifies that the search is not to be case-sensitive.
    

    Example: FindStr /I /B "<String>" "<FileToSearch>" > "<OutputFile>" 
    
  • 重定向

相关内容