簡體   English   中英

批處理文件移動文件,文件名中帶有空格。

[英]Batch file moving files with spaces in their name.

我希望有人能幫到我,這幾天我一直在Google上尋找答案,卻一無所獲。 我有一個兩部分的代碼,拳頭將所有內容從子文件夾中拉出,然后第二部分將這些文件按類型移動到其他位置的其他文件夾中。 我可以使代碼在測試設置中工作,但不會在我要移動的文件上使用。 我認為這與其中包含空格的文件的名稱有關,但我不確定。 這是代碼。 多謝你們!

第一部分

FOR /R C:\Users\Laptop02\Desktop\Folder 1 Test  %%i IN (*.*) DO MOVE %%i C:\Users\Laptop02\Desktop\Folder 1 Test

第二部分

@echooff
set media=C:\Users\Laptop02\Desktop\Foder 2 Test
set jpg=C:\Users\Laptop02\Desktop\Foder 2 Test\mediadata
set xml=C:\Users\Laptop02\Desktop\Foder 2 Test\mediadata

move %dlDir%*.avi %media%
move %dlDir%*/*.avi %meia%
move %dlDir%*.mp4 %media%
move %dlDir%*/*.mp4 %media%
move %dlDir%*.mkv %media%
move %dlDir%*/*.mkv %media%
move %dlDir%*.jpg %jpg%
move %dlDir%**.xml %xml%

再次感謝。

您需要在名稱中可能帶有空格的文件兩邊加上引號,例如

move "%dlDir%*.avi" "%media%"

UPDATE

對於for部分,添加

"delims=" 

像這樣:

FOR /F "delims=" IN (dir /b /s "C:\Users\Laptop02\Desktop\Folder 1 Test")

盡管move命令是不錯的並且上面的方法行得通,但是使用以下具有多線程支持的robocopy命令,它應該可以更快地復制或移動許多文件:

@echo off
set "source=C:\Users\Laptop02\Desktop\Folder 1 Test"
set "media=C:\Users\Laptop02\Desktop\Foder 2 Test"
set "jpg=C:\Users\Laptop02\Desktop\Foder 2 Test\mediadata"
set "xml=C:\Users\Laptop02\Desktop\Foder 2 Test\mediadata"
robocopy /s /mov /mt "%source%" "%media%" *.avi
robocopy /s /mov /mt "%source%" "%media%" *.mp4
robocopy /s /mov /mt "%source%" "%media%" *.mkv
robocopy /s /mov /mt "%source%" "%jpg%" *.jpg
robocopy /s /mov /mt "%source%" "%xml%" *.xml
pause

另外,將文件移動一次也可以更快:

@echo off
set "source=C:\Users\Laptop02\Desktop\Folder 1 Test"
set "media=C:\Users\Laptop02\Desktop\Foder 2 Test"
set "jpg=C:\Users\Laptop02\Desktop\Foder 2 Test\mediadata"
set "xml=C:\Users\Laptop02\Desktop\Foder 2 Test\mediadata"

cd "%source%"
for /r "%~dp0" %%A in (*) do (
    if "%%~xA"==".avi" move "%%~A" "%media%\"
    if "%%~xA"==".mp4" move "%%~A" "%media%\"
    if "%%~xA"==".mkv" move "%%~A" "%media%\"
    if "%%~xA"==".jpg" move "%%~A" "%jpg%\"
    if "%%~xA"==".xml" move "%%~A" "%xml%\"
)
pause

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM