我无法将最新文件从网络文件夹(例如\ test01 \ test1 \ test)复制到另一个文件夹路径(例如D:\ Users \ Desktop \ test)。我一直在使用以下脚本来运行我的批处理脚本:
FOR /F "delims=|" %%I IN ('DIR "\\test01\test1\test" /B /O:D /S') DO SET NewestFile=%%I
copy "%NewestFile%" "D:\Users\Desktop\test"
如果我只使用文件夹路径进行复制,则此脚本可以正常工作。
请帮帮我......
答案 0 :(得分:2)
下一段代码片段应该复制最新的文件:
pushd "\\test01\test1\test"
FOR /F "delims=" %%I IN ('DIR /B /O:D /A:-D') DO SET "NewestFile=%%I"
copy /b "%NewestFile%" "D:\Users\Desktop\test"
popd
UNC
路径时,PUSHD
将创建临时驱动器地图,然后将使用该新驱动器。临时驱动器号按反向字母顺序分配,因此如果Z:
空闲,则首先使用它。DIR /B /O:D
:使用/S
开关将按文件夹(和子文件夹)排序,然后按日期排序。DIR /A:-D
从输出中排除目录(文件夹)。"delims="
代替"delims=|"
。copy /b
强制使用二进制副本。