kla*_*kla 16 batch-file forfiles
我试图使用forfiles删除超过7天的文件.这些文件位于UNC路径中.下面是我正在使用的脚本.
Forfiles -p \\devexpress\C$\FULL\ -s -m *.* -d -7 -c "cmd /c del /q @path"
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误,提到不支持UNC路径(\ machine\share).
似乎有可用的解决方法,但无法得到一个明确的答案谷歌搜索.
jir*_*mat 66
PA的第一个答案的增强解决方案是:
PushD "\\devexpress\C$\FULL\" &&(
forfiles -s -m *.* -d -7 -c "cmd /c del /q @path"
) & PopD
Run Code Online (Sandbox Code Playgroud)
PushD命令自动将UNC路径映射到空闲驱动器号,因此这是可移植的方法.发现于http://www.petri.co.il/forums/showthread.php?t=24241.
PA.*_*PA. 15
我在尝试重现问题时遇到的错误表明问题不在于FORFILES没有支持UNC Path,而是CMD无法以UNC路径作为默认目录启动.如果这也是您的问题,有三种方法可以解决它.
您可以将UNC路径分配给磁盘盘符 NET USE
NET USE V: \\devexpress\C$
Forfiles -p V:\FULL\ -s -m *.* -d -7 -c "cmd /c del /q @path"
Run Code Online (Sandbox Code Playgroud)您可以CMD直接在-C选项中绕过并直接使用一些ERASEFILE可执行实用程序FORFILES
您可以绕过FORFILES并使用FOR带有日期检查逻辑的命令.请参阅我对此堆栈溢出问题的回答如何在Windows批处理脚本中检查文件的时间戳创建?
| 归档时间: |
|
| 查看次数: |
52650 次 |
| 最近记录: |