[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理如何查找大小为0的文件并替换?

我有两个U盘A和B,其中一个U盘A当时拷进去很多大小为0的文件,现在想用批处理找出来,并用另一个U盘B里面的同名文件、并且大小不是0的文件替换(包含子目录),谢谢

回复 2# Batcher
谢谢老师,晚上我测试一下!
另外,如果我想把大的文件覆盖小的,或者是新的覆盖旧的,代码怎么改呢?

TOP

回复 2# Batcher


    REM 指定U盘A的所在的盘符

老师,这里怎么改呀?

TOP

回复 5# Batcher


   比如说我的U盘是K:/   
第三行  set "U_A=X:"  修改成  set "K:/ "   ?

TOP

回复 7# Batcher
老师,我在一个盘里的两个文件夹试验,文件夹1的文件是有内容的,文件夹2的文件是空的,试了不成功

    @echo off
REM 指定U盘A的所在的盘符
set "U_A=k:/1"
REM 指定U盘B的所在的盘符
set "U_B=k:/2"

if not exist "%U_A%\" (
    echo 不存在 %U_A%
    goto :End
)
if not exist "%U_B%\" (
    echo 不存在 %U_B%
    goto :End
)
for /f "delims=" %%i in ('dir /b /s /a-d "%U_A%"') do (
    if %%~zi equ 0 (
        if exist "%U_B%%%~pnxi" (
            copy /y "%U_B%%%~pnxi" "%%~dpi"
        )
    )
)

:End
pause

TOP

回复 10# Batcher


    老师,测试不成功

TOP

回复 12# Batcher


    只提示“请按任意键继续”,按了就没了

TOP

返回列表