使用Windows命令行对文件夹的每个文件执行操作

时间:2016-06-16 05:11:36

标签: windows command-line

我在文件夹中有一些文档。这些文档可能具有相同的名称和不同的扩展名,例如:xyz.doc,xyz.pdf和xyz.log。我想在Windows命令行脚本中实现以下逻辑:

foreach *.doc {
if EXIST *.pdf{
 do something_1
}else {
  do something_2
}
if EXIST *.log {
 do something_3
}

1 个答案:

答案 0 :(得分:0)

这是我的Minimal, Complete, and Verifiable example(来自Copy&Paste窗口的cmd)。使用了另一个扩展,但原则是相同的:

==> dir /b "sta *.*"
sta tus.csv
sta tus.txt
sta tus2.txt

==> for %G in ("sta *.txt") do @if exist "%~nG.csv" (echo + %~nG ) else (echo - %~nG)
+ sta tus
- sta tus2

==>

扩展程序的批处理脚本:

@echo off
for %%G in ("*.doc") do (
    if exist "%%~nG.pdf" (
        echo + %%~nG
    ) else (
        echo - %%~nG
    )
)

资源(必读,不完整):