bat 比较2个目录文件下的文件名 输出不同的文件名

A 目录d:\workhome下有名为 1001、1002、1003、1004文件夹
B 目录e:、workhome下有名为 1002、1004文件夹

比较A目录中的文件夹名(1001、1002、1003、1004)是否在B中存在,不存在则输出
1001、1003不存在

4个回答

@echo off
@echo [要比较的文件夹][被比较的文件夹]

set srcDir =
set destDir =
if "" == "%1" (
set /p srcDir=输入要比较的文件夹:
) else (
set srcDir=%1
)
if "" == "%2" (
set /p destDir=输入被比较的文件夹:
) else (
set destDir=%2
)

::@echo =-=-=-=
@echo [%srcDir%][%destDir%]
for /d %%f in (%destDir%*) do (
:: @echo [%%f]
if not exist %srcDir%\%%~nf @echo %%~nf
)
pause

要用什么语言写呢,java还是c++?

@echo off
@echo [要比较的文件夹][被比较的文件夹]

set srcDir =
set destDir =
if "" == "%1" (
    set /p srcDir=输入要比较的文件夹:
) else ( 
    set srcDir=%1
)
if "" == "%2" (
    set /p destDir=输入被比较的文件夹:
) else ( 
    set destDir=%2
)


::@echo =-=-=-=
@echo [%srcDir%][%destDir%]
for /d %%f in (%destDir%\*) do (
::  @echo [%%f]
    if not exist %srcDir%\%%~nf @echo %%~nf
)
pause

其实可以装个对比工具,可以对比整个文件夹,子文件夹和文件都可以对比,一目了然。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐