2012-12-01 13 views

cevap

2

Burada uzunca bir betik var ama oldukça iyi çalışmalı. "dir" kullanır, ancak "forfiles" da bakabilirsiniz. Forfiles daha esnektir, ancak gerçekten kullanılması zordur.

@echo off 
@rem USAGE: MoveDirs From To 

setlocal 

    set from="%~1" 
    set to="%~2" 

    if "%1"=="" goto :Usage 
    if "%2"=="" goto :Usage 


    for /f "delims=;" %%a in ('dir "%1" /ad /b ') do call :MoveIt "%1" "%2" "%%a" 

    goto :EOF 

:MoveIt 
    move "%~1\%~3" "%~2" > nul || echo Failed to move %3 to %2 & goto :EOF 
    echo Moved %3 to %2 
    goto :EOF 

:Usage 
    echo Usage: moveDirs.bat FromDirectory ToDirectory 
    goto :EOF 
+0

Teşekkürler @joeking mükemmel çalıştı! Bana bir saat ve bir çift karımın dosyalarını kurtardın! – user1868173

+0

+1, bu iyi çalışıyor – fedmich

1

Ayrıca XCOPY üzerinde okumak da isteyebilirsiniz. yalnızca boş alt dizin olmayan dosyaları kopyalayabilirsiniz. Daha fazla bilgi edinmek için bu komutu kontrol edin.

xcopy /? 
İlgili konular