中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 22:24
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于比较文件的批处理 查看 774 回复 1
楼 主 关于比较文件的批处理 发表于 2009-11-07 01:33 ·  中国 广东 广州 天河区 电信
新手上路
积分 7
发帖 4
注册 2006-05-01 21:57
20年会员
UID 54799
状态 离线
A文件夹有A、B、C、D、E、F六个文件夹和a、b、c、d四个文件
B文件夹有B、D、E三个文件夹和c、d两个文件

请问用批处理怎样才能删除A文件夹内与B文件夹内同名的文件夹和文件
2 发表于 2009-11-07 11:38 ·  中国 四川 成都 电信
初级用户
★★
积分 145
发帖 95
注册 2008-04-12 16:29
18年会员
UID 115703
性别 男
状态 离线
在同一个文件夹下,可以存在名称相同的文件和文件夹么?
自己试验,倒是可以实现,只是有输出错误,不知道是什么原因……

@echo off
setlocal enabledelayedexpansion
for /f "skip=7 tokens=3,4" %%a in ('dir b') do (
set typeb=%%a
set nameb=%%b
if exist "a\!nameb!" (
for /f "skip=5 tokens=3" %%i in ('dir "a\!nameb!"') do (
set typea=%%i
if /I "!typea!"=="<dir>" (
echo Deleting dir "a\!nameb!"
rd /q /s "a\!nameb!" >nul
) else (
echo Deleting file "a\!nameb!"
del /q /s "a\!nameb!" >nul
)
)
)
)
pause
论坛跳转: