我正在使用以下代码删除在我的C:\驱动器上找到的所有Acad.lsp实例,但我想提出一个例外,即C:\ Autocad 2010 \ Support。
我怎样才能做到这一点?
del "C:\ICT\acad.lsp" /q /a /s
答案 0 :(得分:1)
从命令行,您可以使用批处理文件for
命令(我假设您在此处使用Windows命令提示符或类似命令)。这是一个强大的命令,可以让你循环一组“事物” - 使用正确的选项,这些“东西”可能是文件。
以下命令在C:\ICT
目录中运行时,应该执行您想要的操作:
for /F "usebackq" %a in (`dir /s /b acad.lsp ^| find /v "C:\Autocad 2010\Support"`) do @echo %a
请注意,我在此处使用@echo
,以便您可以在将@echo
更改为del
之前测试结果是否符合预期。
如果您想将其放入批处理文件中,则应将%a
更改为%%a
。
对正在发生的事情做一点解释:
for /F "usebackq" %a in (...)
运行后引号之间的命令,并在每个结果项上运行do
之后的命令。上面示例中的命令对文件dir
执行递归acad.lsp
,并通过find
命令将其删除以删除要保留的文件。其余文件是您要删除的文件。