标题: [文件操作] 批处理怎样删除指定文件名的文件? [打印本页]
作者: sdhaozao 时间: 2015-2-28 10:37 标题: 批处理怎样删除指定文件名的文件?
想删除指定文件名的文件,自己百度加在论坛里面看了一下,写了如下代码,喜剧效果明显,求大神指点
本来是想把repetition.txt 里面的文件删除,结果把repetition.txt文件删除了....- @echo off
- cd /d "D:\"
- del /s ('findstr /g:repetition.txt')
- pause
复制代码
作者: pcl_test 时间: 2015-2-28 12:05
回复 1# sdhaozao
repetition.txt里的内容格式是怎样的?
作者: DAIC 时间: 2015-2-28 12:17
- @echo off
- for /f "usebackq delims=" %%i in ("D:\repetition.txt") do (
- if exist "%%i" (
- del /f /q "%%i"
- )
- )
复制代码
作者: sdhaozao 时间: 2015-2-28 13:07
回复 2# pcl_test
全部是XXX.pdf 文件
作者: sdhaozao 时间: 2015-2-28 13:10
回复 3# DAIC
非常感谢!!!
刚开始不行,我调整了一下代码,就可以了。- @echo off
- cd /d "d:\"
- for /f "usebackq delims=" %%i in ("D:\repetition.txt") do (
- if exist "%%i" (
- del /f /q "%%i"
- )
- )
复制代码
作者: CrLf 时间: 2015-2-28 13:18
顶楼代码应该也删不到 repetition.txt 吧
作者: pcl_test 时间: 2015-2-28 13:27
本帖最后由 pcl_test 于 2015-2-28 13:36 编辑
回复 4# sdhaozao - @echo off
- setlocal enabledelayedexpansion
- for /f "usebackq delims=" %%a in ("D:\repetition.txt") do (
- for /r "D:\" %%b in (.) do (
- set "dir=%%b"
- if exist "!dir:~0,-1!%%a" (echo 删除文件"!dir:~0,-1!%%a" && del "!dir:~0,-1!%%a" /f /q)
- )
- )
- pause
复制代码
- @echo off
- cd /d "D:\"
- for /f "usebackq delims=" %%a in ("repetition.txt") do del "%%a" /f /q /s
- pause
复制代码
作者: sdhaozao 时间: 2015-2-28 13:31
回复 6# CrLf
不是顶楼的代码删除的.....就是我用顶楼的代码在不断修改的删除了repetition.txt ,就是不能读取repetition.txt 里面的信息
作者: DAIC 时间: 2015-2-28 13:35
回复 5# sdhaozao - @echo off
- cd /d D:\
- for /f "delims=" %%i in (repetition.txt) do (
- del /f /q "%%i" 2>nul
- )
复制代码
或者这样也行
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |