写一个bat文件在windows系统下运行,要求如下 1.运行后可自动删除指定的多个目录(包括指定目录中子目录)下的pdf、docx、xlsx、jpeg、jpg、png、xls文件 2.删除的文件备份至C:\Users\OPM\Desktop\备份文件夹中
时间: 2024-10-12 16:08:28 浏览: 29
要创建一个Windows批处理文件(.bat),用于删除指定目录及其子目录下的特定文件并备份到桌面,可以按照以下步骤编写:
```batch
@echo off
setlocal enabledelayedexpansion
:: 定义源目录和目标备份目录
set "source_dir=D:\Your_Directory" :: 替换为你要删除文件的实际路径
set "backup_dir=C:\Users\OPM\Desktop\备份文件夹"
:: 创建备份文件夹如果不存在
if not exist !backup_dir! mkdir !backup_dir!
:: 循环遍历源目录及其所有子目录
for /R %source_dir% %%a in (*.pdf;*.docx;*.xlsx;*.jpeg;*.jpg;*.png;*.xls) do (
echo 删除文件: %%a
del "%%a"
:: 创建备份副本
set "backup_file=!backup_dir!\%%~na_%%~xa"
copy "%%a" "!backup_file!"
)
:: 提示操作完成
echo 所有指定类型的文件已删除,并备份到 %backup_dir% 中。
pause
```
在这个脚本中:
1. `@echo off` 防止命令行显示每一步的操作;
2. `setlocal enabledelayedexpansion` 为了能够动态改变变量值;
3. 使用`for /R`循环遍历源目录及其所有子目录;
4. `del`命令用于删除文件,`copy`命令用于备份;
5. `%%~na`和`%%~xa`分别获取文件名(不含扩展名)和扩展名。
将`.pdf`, `.docx`, 等替换为你实际要删除的文件扩展名列表,然后将`D:\Your_Directory`替换为你需要删除文件的目录路径。保存这个脚本为`.bat`文件(例如:delete_files.bat),双击运行即可执行任务。
阅读全文