使用长文件名的副本

时间:2015-10-17 15:06:02

标签: windows batch-file cmd

我发现存在不同的相关问题(例如thisthis other), 但似乎没有人处理我的问题。 我正在尝试将subfolder中的所有PDF文件复制到当前文件夹中。

如果我将.bat文件和subfolder放在桌面上,则以下命令很有效:

for /R "%cd%\subfolder" %%f in (*.pdf) do copy %%f ".\"

但是,如果我将子文件夹和.bat文件放在以较长路径为特征的位置,则脚本不再起作用。 该路径包含空格和下划线,没有特殊字符。

任何帮助都会受到高度赞赏。

1 个答案:

答案 0 :(得分:2)

如果路径中有空格,则必须引用它。由于所有路径都可以包含空格字符,因此请始终使用引号。

for /R "%cd%\subfolder" %%f in (*.pdf) do copy "%%~f" ".\"

编辑:使用" %% ~f"正如@aschipfl所建议的那样。