如果找不到路径,批处理文件将停止

时间:2017-02-01 13:29:31

标签: batch-file cmd

我有一个批处理文件,它接收多个服务器,查找某些文件夹并将其内容复制到我的计算机中 - 放入一个新创建的同名文件夹中。这工作但是:

问题是指如果找不到路径,批次会停止并关闭。
我尝试使用%ERRORLEVEL%修复它但没有效果。 请帮忙。
我的代码:

<button routerLink="more">Add</button>

2 个答案:

答案 0 :(得分:1)

我假设这是你试图实现的逻辑。应该很容易遵循。

@ECHO OFF

IF EXIST "\\thunder\Contracte\contracte\CONTRACTE NEVOI PERSONALE\Contracte nevoi personale 235001N - 237500N\" (
    pushd "\\thunder\Contracte\contracte\CONTRACTE NEVOI PERSONALE\Contracte nevoi personale 235001N - 237500N\"
    for /f "delims=" %%a in ('dir /b /s ^| find "235110"') do (
        cd ..
        xcopy "%%a" "%destination%\CtrExtrase\235110NA\" /E /D /Y
    )
    popd
)


IF EXIST "\\thunder\Contracte\contracte\CONTRACTE NEVOI PERSONALE\Contracte nevoi personale 235001N - 237500N\" (
    pushd "\\thunder\Contracte\contracte\CONTRACTE NEVOI PERSONALE\Contracte nevoi personale 235001N - 237500N\"
    for /f "delims=" %%a in ('dir /b /s ^| find "235449"') do (
        cd ..
        xcopy "%%a" "%destination%\CtrExtrase\235449NA\" /E /D /Y
    )
    popd
)

答案 1 :(得分:1)

我想你想要实现以下目标:

pushd "\\thunder\Contracte\contracte\CONTRACTE NEVOI PERSONALE\Contracte nevoi personale 235001N - 237500N" && (
    for %%N in ("235110" "235449") do (
        for /F "delims=" %%A in ('dir /B /S /A:D "%%~N"') do (
            xcopy /I /E /D /Y "%%~A" "%destination%\CtrExtrase\%%~NNA\%%~nxA"
        )
    )
    popd
)