如何处理目录上的空间问题

时间:2015-03-20 09:27:29

标签: batch-file command-line

我有一个批处理文件脚本,可以将文件复制到另一个目录。 如果“In”和“Progress”之间没有空格,则以下脚本正在运行。

即使目录中有空格,我也需要这个脚本。

EG:

@ECHO OFF
SET source=C:\Tun\In Progress\Newfolder
SET target=C:\Tun\In Progress\resultfolder
IF NOT EXIST %target% MD %target%
FOR %%f IN (%source%\*.txt) DO (
    MOVE "%%f" "%target%\%%~nxf"
    PING -n 5 127.0.0.1 > NUL
)

2 个答案:

答案 0 :(得分:1)

@ECHO OFF
SET "source=C:\Tun\In Progress\Newfolder"
SET "target=C:\Tun\In Progress\resultfolder"
MD "%target%" 2>nul 
FOR %%f IN ("%source%\*.txt") DO (
    MOVE "%%~ff" "%target%\%%~nxf"
    PING -n 5 127.0.0.1 > NUL
)

您需要引用可能包含空格的每个文件/文件夹引用。

答案 1 :(得分:0)

@ECHO OFF
SET source="C:\Tun\In Progress\Newfolder"
SET target="C:\Tun\In Progress\resultfolder"
IF NOT EXIST %target% MD %target%
FOR %%f IN (%source%\*.txt) DO (
    MOVE "%%f" %target%\%%~nxf
    PING -n 5 127.0.0.1 > NUL 
)

我认为这是一个解决方案