![Board logo](images/default/logo.gif)
标题: [文件操作] 批处理怎样批量删除文件并返回状态? [打印本页]
作者: szsy 时间: 2010-12-1 16:27 标题: 批处理怎样批量删除文件并返回状态?
我的构想是,把需要删除的文件的电脑名,路径,文件名信息写在一个文档中,运行脚本后,在每个文件后面写入状态(是否删除成功和日期)。由于电脑众多且每天要做检查非常繁琐,这些电脑都入域,并且我们有管理员权限登录,求高手指点。
PS:如果文件夹名中有空格怎么处理?
filelist.txt
pc1\folder 1\1.txt
pc2\folder2\2.txt
pc3\folder3\3.txt
执行完脚本输出日志
filelist-update.txt
pc1\folder 1\1.txt, Deleted, date
pc2\folder2\2.txt, Failed, date
pc3\folder3\3.txt, Deleted, date
作者: rockets 时间: 2010-12-1 16:51 标题: 解决空格问题
有空格的路径加双引号就可避免
作者: szsy 时间: 2010-12-2 12:53
for /f "delims=" %%a in (list.txt) do del /f "%%a"
现在可以实现批量删除文档中指定文件,但是不能产生日志,如何判断该文件删除成功或失败并写入日志呢?
作者: hanyeguxing 时间: 2010-12-2 13:16
- @echo off&setlocal enabledelayedexpansion
- (for /f "delims=" %%a in (list.txt) do (
- del /f/q/a "%%a"
- if exist "%%a" (set a=Failed) else set a=Deleted
- echo %%a,!a!,!date:~0,10!
- ))>>filelist-update.txt
复制代码
作者: bluewing009 时间: 2010-12-2 20:06
可以使用errorlevel或者exist在判断一下~不过del的返回值貌似有问题
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |