嗨我尝试下面命令删除UNC路径中的文件
set folder="\\SERVERNAME\Publish"
cd /d %folder%
for /F "delims=" %%i in ('dir /b') do (rmdir "%%i" /s/q || del "%%i" /s/q)
Run Code Online (Sandbox Code Playgroud)
但我得到错误说:
UNC paths are not supported. Defaulting to Windows Directory
Run Code Online (Sandbox Code Playgroud)
不知何故,我需要使用批处理命令删除驻留在服务器的共享路径中的文件.任何帮助赞赏.
编辑 2015-09-16 - 原始答案仍然在底部
重新格式化代码以避免在映射失败时删除不需要的文件夹.只有在pushd执行删除的情况下才会执行.
set "folder=\\SERVERNAME\Publish"
pushd "%folder%" && (
for /d %%i in (*) do rmdir "%%i" /s /q
popd
)
Run Code Online (Sandbox Code Playgroud)
原始答案:
set "folder=\\SERVERNAME\Publish"
pushd "%folder%"
for /d %%i in (*) do rmdir "%%i" /s /q
popd
Run Code Online (Sandbox Code Playgroud)
pushd将在unc路径上创建一个驱动器映射,然后更改为它.然后,所有操作都在drive:\ folders下.最后popd将删除驱动器分配.