无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 6372|回复: 10
打印 上一主题 下一主题

[求助] 求个批处理

[复制链接]
跳转到指定楼层
1#
发表于 2018-3-29 03:31:09 来自手机 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hhhhhhe 于 2018-4-7 17:45 编辑

源文件夹与要比较的文件夹比较,把要比较的文件夹里面没有的文件写成文本格式
推荐
发表于 2018-3-29 08:45:15 | 只看该作者
本帖最后由 dos时代菜鸟 于 2018-3-29 08:57 编辑
  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. set /p dir1=请输入要母本文件夹:
  4. set /p dir2=请输入要比较的文件夹:
  5. for /f "delims=" %%c in ('dir /b /s /a-d %dir1%') do (
  6.   set "dir11=%%c"
  7.   set "dir11=!dir11:%dir1%=!"
  8.   if not exist "!dir2!\!dir11!" echo "!dir11!"
  9. )
  10. pause
复制代码

if not  exist .......echo .....


点评

不错,谢谢,学习了  详情 回复 发表于 2018-3-30 06:13
请教,文件复制到哪里了?找不到  详情 回复 发表于 2018-3-29 17:34
谢谢你了  详情 回复 发表于 2018-3-29 12:08
回复

使用道具 举报

3#
 楼主| 发表于 2018-3-29 12:08:52 来自手机 | 只看该作者
dos时代菜鸟 发表于 2018-3-29 08:45
if not  exist .......echo .....

谢谢你了
回复

使用道具 举报

4#
发表于 2018-3-29 17:34:13 | 只看该作者
dos时代菜鸟 发表于 2018-3-29 08:45
if not  exist .......echo .....

请教,文件复制到哪里了?找不到

点评

也 没复制啊,只是 显示了以下 而已。  详情 回复 发表于 2018-3-29 20:55
回复

使用道具 举报

5#
发表于 2018-3-29 20:55:20 | 只看该作者
chshrm 发表于 2018-3-29 17:34
请教,文件复制到哪里了?找不到

也 没复制啊,只是 显示了以下 而已。

点评

老大,能改一下不只是显示,还可以复制到特定的某个文件夹(比如extra files文件夹)吗?  详情 回复 发表于 2018-3-29 20:58
回复

使用道具 举报

6#
发表于 2018-3-29 20:58:22 | 只看该作者
dos时代菜鸟 发表于 2018-3-29 20:55
也 没复制啊,只是 显示了以下 而已。

老大,能改一下不只是显示,还可以复制到特定的某个文件夹(比如extra files文件夹)吗?

点评

你那个文件夹 有子文件夹么?如果有,需要用到 xcopy 命令  详情 回复 发表于 2018-3-30 08:24
回复

使用道具 举报

7#
发表于 2018-3-29 21:15:57 | 只看该作者
主要是想对比并提取指定的文件的话,为何不用beyond compare
回复

使用道具 举报

8#
发表于 2018-3-30 06:13:07 | 只看该作者
dos时代菜鸟 发表于 2018-3-29 08:45
if not  exist .......echo .....

不错,谢谢,学习了
回复

使用道具 举报

9#
发表于 2018-3-30 08:24:42 | 只看该作者
本帖最后由 dos时代菜鸟 于 2018-3-30 08:52 编辑
chshrm 发表于 2018-3-29 20:58
老大,能改一下不只是显示,还可以复制到特定的某个文件夹(比如extra files文件夹)吗?

你那个文件夹 有子文件夹么?如果有,需要用到 xcopy 命令

  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. mode con: cols=120
  4. set /p dir1=请输入母本文件夹:
  5. set /p dir2=请输入要比较的文件夹:
  6. set /p dir3=请输入目标文件夹:
  7. for /f "delims=" %%c in ('dir /b /s /a-d %dir1%') do (
  8.   set "dir11=%%c"
  9.   set "dir11=!dir11:%dir1%=!"
  10.   if not exist "!dir2!\!dir11!" (
  11.     echo "!dir11!"
  12.     xcopy /t /y /h /f /c "%%c" "!dir3!\!dir11!"
  13.   )
  14. )
  15. pause
复制代码



点评

目标文件夹里只能复制文件夹进去,无法复制文件,都是空文件夹  详情 回复 发表于 2018-3-30 11:54
回复

使用道具 举报

10#
发表于 2018-3-30 11:54:47 | 只看该作者
dos时代菜鸟 发表于 2018-3-30 08:24
你那个文件夹 有子文件夹么?如果有,需要用到 xcopy 命令

目标文件夹里只能复制文件夹进去,无法复制文件,都是空文件夹

点评

第12行 xcopy 下面再加一行这个 copy "%%c" "!dir3!\!dir11!"  详情 回复 发表于 2018-3-31 16:20
回复

使用道具 举报

11#
发表于 2018-3-31 16:20:42 | 只看该作者
chshrm 发表于 2018-3-30 11:54
目标文件夹里只能复制文件夹进去,无法复制文件,都是空文件夹

第12行 xcopy 下面再加一行这个

copy "%%c" "!dir3!\!dir11!"
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-30 17:38

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表