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

[文件操作] 批处理如何删除同名文件?

一个文件夹中有TIF与JPG两个子文件夹里面分别有.TIF文件与.JPG文件,问题是怎么删除tif文件夹中与jpg文件名同样的文件。

如TIF文件夹中有01.TIF 02.TIF 03.TIF...06.TIF.............JPG文件夹中有01.JPG  03.JPG  06.JPG..................

也就是想把TIF文件夹中01.TIF  03.TIF  06.TIF......用批处理删除,要怎么做才可以呢

请大侠帮帮忙啊~~~

  1. @echo off
  2. for %%i in (JPG\*.JPG) do del TIF\%%~ni.TIF
  3. pause
复制代码

TOP

本帖最后由 Bearxy 于 2012-9-11 08:45 编辑

回复 2# Demon

我一直不理解,既然你前面的%%a都已经赋值为“JPG\*.jpg” (JPG目录下的所有.jpg文件),那么在后面的括号中,为什么要把%%a扩展成%%~ na ? 前面赋值的时候不是已经有jpg后缀了吗?
那解析del TIF\%%~ni.TIF 不就是 del tif\*.jpg.tif

TOP

回复  Demon

我一直不理解,既然你前面的%%a都已经赋值为“JPG\*.jpg” (JPG目录下的所有.jpg文件), ...
Bearxy 发表于 2012-9-11 08:43


先测试再评论好么。

TOP

有1.2.3.4.5....7.jpg文件
  1. @echo off
  2. for %%i in (*.JPG) do (
  3. echo.&echo %%i
  4. echo.%%~ni.TIF
  5. )
  6. pause
复制代码
输出结果为:
  1. 1.jpg
  2. 1.TIF
  3. 2.jpg
  4. 2.TIF
  5. 3.jpg
  6. 3.TIF
  7. 4.jpg
  8. 4.TIF
  9. 5.jpg
  10. 5.TIF
  11. 6.jpg
  12. 6.TIF
  13. 7.jpg
  14. 7.TIF
复制代码
悲催啊,我以前全是用tokens delims=.来取文件名……

TOP

返回列表