如果目录中存在相同名称的文件,请从桌面删除所有文件

时间:2018-07-25 12:30:15

标签: file batch-file

我正在尝试创建一个批处理文件,该文件将从桌面删除所有与特定文件夹(C:\ Users \ micheled \ Desktop \ TestDelete)相同名称的文件。

@echo off
SETLOCAL ENABLEDELAYEDEXPANSION

FOR %%x IN (*) DO (
  del C:\Users\micheled\Desktop\%%x    
)

但是我对名称中带有空格的文件有问题(例如:“ w 2.txt”),该批处理而不是执行删除w 2.txt,将执行: 删除w 删除2.txt 那么如何确保带有扫描的文件被视为单个元素?

谢谢!

1 个答案:

答案 0 :(得分:0)

养成双引号的习惯,尤其是当它们包含空格时。

根据Mofi在评论中的建议,这是一个单行示例:

@For %%A In ("C:\Users\micheled\Desktop\TestDelete\*") Do @If Exist "C:\Users\micheled\Desktop\%%~nxA" Del "C:\Users\micheled\Desktop\%%~nxA"