[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理怎样删除指定文件名的文件?

想删除指定文件名的文件,自己百度加在论坛里面看了一下,写了如下代码,喜剧效果明显,求大神指点

本来是想把repetition.txt 里面的文件删除,结果把repetition.txt文件删除了....
  1. @echo off
  2. cd /d "D:\"
  3. del /s ('findstr /g:repetition.txt')
  4. pause
复制代码

回复 1# sdhaozao

repetition.txt里的内容格式是怎样的?

TOP

  1. @echo off
  2. for /f "usebackq delims=" %%i in ("D:\repetition.txt") do (
  3.     if exist "%%i" (
  4.         del /f /q "%%i"
  5.     )
  6. )
复制代码

TOP

回复 2# pcl_test


    全部是XXX.pdf 文件

TOP

回复 3# DAIC

非常感谢!!!

刚开始不行,我调整了一下代码,就可以了。
  1. @echo off
  2. cd /d "d:\"
  3. for /f "usebackq delims=" %%i in ("D:\repetition.txt") do (
  4.     if exist "%%i" (
  5.         del /f /q "%%i"
  6.     )
  7. )
复制代码

TOP

顶楼代码应该也删不到 repetition.txt 吧

TOP

本帖最后由 pcl_test 于 2015-2-28 13:36 编辑

回复 4# sdhaozao
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "usebackq delims=" %%a in ("D:\repetition.txt") do (
  4. for /r "D:\" %%b in (.) do (
  5. set "dir=%%b"
  6. if exist "!dir:~0,-1!%%a" (echo 删除文件"!dir:~0,-1!%%a" && del "!dir:~0,-1!%%a" /f /q)
  7. )
  8. )
  9. pause
复制代码
  1. @echo off
  2. cd /d "D:\"
  3. for /f "usebackq delims=" %%a in ("repetition.txt") do del "%%a" /f /q /s
  4. pause
复制代码

TOP

回复 6# CrLf


不是顶楼的代码删除的.....就是我用顶楼的代码在不断修改的删除了repetition.txt ,就是不能读取repetition.txt 里面的信息

TOP

回复 5# sdhaozao
  1. @echo off
  2. cd /d D:\
  3. for /f "delims=" %%i in (repetition.txt) do (
  4.     del /f /q "%%i" 2>nul
  5. )
复制代码
或者这样也行

TOP

返回列表