求个批处理
本帖最后由 hhhhhhe 于 2018-4-7 17:45 编辑源文件夹与要比较的文件夹比较,把要比较的文件夹里面没有的文件写成文本格式 本帖最后由 dos时代菜鸟 于 2018-3-29 08:57 编辑
@echo off
setlocal ENABLEDELAYEDEXPANSION
set /p dir1=请输入要母本文件夹:
set /p dir2=请输入要比较的文件夹:
for /f "delims=" %%c in ('dir /b /s /a-d %dir1%') do (
set "dir11=%%c"
set "dir11=!dir11:%dir1%=!"
if not exist "!dir2!\!dir11!" echo "!dir11!"
)
pause
if notexist .......echo .....
dos时代菜鸟 发表于 2018-3-29 08:45
if notexist .......echo .....
谢谢你了 dos时代菜鸟 发表于 2018-3-29 08:45
if notexist .......echo .....
请教,文件复制到哪里了?找不到 chshrm 发表于 2018-3-29 17:34
请教,文件复制到哪里了?找不到
也 没复制啊,只是 显示了以下 而已。 dos时代菜鸟 发表于 2018-3-29 20:55
也 没复制啊,只是 显示了以下 而已。
老大,能改一下不只是显示,还可以复制到特定的某个文件夹(比如extra files文件夹)吗? 主要是想对比并提取指定的文件的话,为何不用beyond compare dos时代菜鸟 发表于 2018-3-29 08:45
if notexist .......echo .....
不错,谢谢,学习了 本帖最后由 dos时代菜鸟 于 2018-3-30 08:52 编辑
chshrm 发表于 2018-3-29 20:58
老大,能改一下不只是显示,还可以复制到特定的某个文件夹(比如extra files文件夹)吗?
你那个文件夹 有子文件夹么?如果有,需要用到 xcopy 命令
@echo off
setlocal ENABLEDELAYEDEXPANSION
mode con: cols=120
set /p dir1=请输入母本文件夹:
set /p dir2=请输入要比较的文件夹:
set /p dir3=请输入目标文件夹:
for /f "delims=" %%c in ('dir /b /s /a-d %dir1%') do (
set "dir11=%%c"
set "dir11=!dir11:%dir1%=!"
if not exist "!dir2!\!dir11!" (
echo "!dir11!"
xcopy /t /y /h /f /c "%%c" "!dir3!\!dir11!"
)
)
pause
dos时代菜鸟 发表于 2018-3-30 08:24
你那个文件夹 有子文件夹么?如果有,需要用到 xcopy 命令
目标文件夹里只能复制文件夹进去,无法复制文件,都是空文件夹 chshrm 发表于 2018-3-30 11:54
目标文件夹里只能复制文件夹进去,无法复制文件,都是空文件夹
第12行 xcopy 下面再加一行这个
copy "%%c" "!dir3!\!dir11!"
页:
[1]