【问题标题】:Want to exclude specific files with dir findstr想用 dir findstr 排除特定文件
【发布时间】:2015-10-13 22:14:24
【问题描述】:

我想在一个文件夹结构中查找所有 *.csv 文件,除了 2 个文件

这是我的代码

for /f "tokens=*" %%i IN ('dir /b /s *.csv | findstr /v /i  "\combinedold.csv" | findstr /v /i "\combined.csv"')

这两个文件是“combined.csv”和“combinedold.csv”。

【问题讨论】:

    标签: batch-file cmd dir findstr


    【解决方案1】:

    基本命令应该是这样的

    dir /s /b /a-d *.csv | findstr /v /i /e /c:"\\combinedold.csv" /c:"\\combined.csv"
    

    现在,要将其包含在 for /f 命令中,必须转义未引用的特殊字符(在本例中为管道),因此它变为

    for /f "delims=" %%i in ('
        dir /s /b /a-d *.csv ^| findstr /v /i /e /c:"\\combinedold.csv" /c:"\\combined.csv"
    ') do echo %%i
    

    【讨论】:

    • 嘿,谢谢你的快速帮助 :) 所以把代码放到我的 bat 中,但它仍然有问题......为了具体问题,我可以向你展示代码的其余部分 @987654324 @ 所以,我想将所有 csv 合并到一个名为 combine.csv 的 csv 中。再次启动 bat 文件时,它将忽略 combine.csv 和 combinedold.csv,因为当我第二次启动 bat 时,它会将 combined.csv 移动到 combinedold.csv
    • @n1no91,看来您已经对大部分流程进行了编码。问题是什么?它符合原始问题吗?如果没有,请为新问题开始一个新问题。评论太有限了。
    猜你喜欢
    • 2014-05-06
    • 1970-01-01
    • 2017-11-06
    • 1970-01-01
    • 1970-01-01
    • 2015-12-11
    • 1970-01-01
    • 1970-01-01
    • 2014-07-01
    相关资源
    最近更新 更多