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

@echo off
title 复制
color 2f
cd /d %~dp0
setlocal enabledelayedexpansion
for /f "delims=*" %%i in ('dir /ad/b/s "*"') do (
set ni=%%~ni
set /a "ni=!ni:~0,4!"
if !ni! LEQ 1400 if !ni! GEQ 1000 (
xcopy /s /e /y "%%i" "F:\0000\0\%%~ni\"
)
)
pause
^^^^^^^^^^^^^^^^^^^^^^^^^
不知道你要的是不是这么复制

TOP

本帖最后由 miqilaosu 于 2019-5-25 18:41 编辑

@echo off
title 复制
color 2f
cd /d %~dp0
set /p ks=开始:
set /p js=结束:
setlocal enabledelayedexpansion
for /f "delims=*" %%i in ('dir /ad/b/s "*"') do (
set ni=%%~ni
set /a "ni=!ni:~0,4!"
if !ni! GEQ %ks% if !ni! LEQ %js% (
xcopy /s /e /d /y "%%i" "F:\0000\0\%%~ni\" && Rd /s /q "%%i"
)
)
pause
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
最后你说的这个有就停止的没改。你确定是有就停止?而不是有就跳过继续执行?这个是不覆盖已存在文件,如果你想停止需要判断下直接跳出
1

评分人数

TOP

本帖最后由 miqilaosu 于 2019-5-25 18:43 编辑

@echo off
title 复制
color 2f
cd /d %~dp0
set /p ks=开始:
set /p js=结束:
setlocal enabledelayedexpansion
for /f "delims=*" %%i in ('dir /ad/b/s "*"') do (
set ni=%%~ni
set /a "ni=!ni:~0,4!"
if !ni! GEQ %ks% if !ni! LEQ %js% (
if exist "F:\0000\0\%%~ni\" (
echo,已存在按任意键跳出
pause
exit
) else (

xcopy /s /d /e /y "%%i" "F:\0000\0\%%~ni\" && Rd /s /q "%%i")

)
)
)
pause
……………………………………………………………………………………………………………………
这个是你说的存在停止跳出的那个,但这种复制的文件估计不会完整啊,因为有可能你100个文件复制第二个时就有相同的了,然后跳出后面都不会执行啊

TOP

本帖最后由 miqilaosu 于 2019-5-26 12:11 编辑

回复 6# 滴血雄鹰


@echo off
title 复制
color 2f
cd /d %~dp0
set /p ks=开始:
set /p js=结束:
setlocal enabledelayedexpansion
for /f "delims=*" %%i in ('dir /ad/b/s "*"') do (
set ni=%%~ni
set /a "ni=!ni:~0,4!"
        if !ni! GEQ %ks% if !ni! LEQ %js% (
                if exist "E:\0000\0\%%~ni\" (
                                dir /ad/b/s "E:\0000\0\%%~ni\" | findstr .*>nul && (
                                echo “文件为空正在复制”
                                xcopy /s /d /e /y "%%i" "E:\0000\0\%%~ni\" && Rd /s /q "%%i"
                                ) || (
                                echo “文件已存在”
                                pause
                                exit
                                )
                )  else (
                xcopy /s /d /e /y "%%i" "E:\0000\0\%%~ni\" && Rd /s /q "%%i"
                )
        ) else (
        echo "没有符合文件"
        )
)
pause
…………………………………………………………………………………………………………………………………………………………………………………………
我试过了这种比如有三个文件夹:1001文件夹,1005文件夹,1008文件夹。比如1005文件夹以E:\000\0\存在文件的话 1008是没有被执行的,因为我也是新人,希望有专业人事帮解答

TOP

返回列表