帮忙写个批处理,复制文件夹1中的所有文件到桌面,如果文件夹1中有压缩文件,就解压到桌面
时间: 2023-12-09 18:03:29 浏览: 72
好的,以下是批处理代码:
```
@echo off
set source="C:\文件夹1"
set destination="%userprofile%\Desktop"
xcopy %source% %destination% /s /e /y
for /r %source% %%i in (*.zip *.rar *.7z) do (
"%SystemRoot%\System32\expand.exe" -F:* "%%i" %destination%
)
```
说明:
- `@echo off`:关闭命令行窗口的回显。
- `set source="C:\文件夹1"`:将源文件夹路径设置为变量 `source`。
- `set destination="%userprofile%\Desktop"`:将目标文件夹路径设置为当前用户的桌面路径。
- `xcopy %source% %destination% /s /e /y`:复制源文件夹中的所有文件到目标文件夹,包括子文件夹,覆盖已存在的文件。
- `for /r %source% %%i in (*.zip *.rar *.7z) do (...)`:遍历源文件夹及其子文件夹中的所有 `.zip`、`.rar` 和 `.7z` 文件。
- `"%SystemRoot%\System32\expand.exe" -F:* "%%i" %destination%`:使用 Windows 自带的解压命令 `expand`,解压压缩文件到目标文件夹。
注意:如果你想要使用此批处理来复制其他文件夹中的文件,需要将第二行的 `set source` 更改为相应的路径。
阅读全文