【发布时间】:2009-12-27 18:37:23
【问题描述】:
我有以下批处理代码(cmd):
for /f "delims=" %%f in ('dir /b /s Example') do (
command
if %errorlevel%==1 (
command
SKIP
)
command
)
编辑:
为了让事情更清楚:
for /f... 搜索名为“示例”的目录并循环搜索多个目录。
第一个command 是一个删除命令,它删除目录中的所有文件。
发生错误时发生的command 是一个echo 命令,它将有关错误的一些信息写入文本文件。
现在是洞skip 的东西;有时,由于access denied 或this file is in use by...,文件无法删除。通常,如果没有跳过的东西会发生什么,它只会停止命令并挂起。所以,我想做的是防止这种情况发生。或者,我想使用skip 之类的东西,所以它可以跳过文件并继续。所以我认为这个命令需要在delete 命令中传递。
我希望现在清楚了。
提前致谢。
【问题讨论】:
-
当 for 可以为你遍历目录树时,调用 dir 是非常愚蠢的
-
请更好地解释您需要什么。我试图用我的回答来猜测你的意图,但显然没有成功。那么,“跳过”是什么意思?也许您可以提供一个示例目录结构和批处理脚本在该目录结构上的预期行为。
-
您对“skip”这个词的使用非常模棱两可。
-
@YourComputerHelpZ - 查看修改后的 fupsduck。感谢 Doc Brown 的 killtask 建议,我认为这应该对您有用。
标签: windows batch-file cmd skip