用Windows脚本写一个自动获取当前路径后查找目录下面所有定义的文件类型复制文件到自定义的文件夹内;再把定义的文件夹包括文件全部移动到指定的文件夹内;并把代码逐行解释
时间: 2024-02-19 10:03:20 浏览: 68
复制指定类型的文件到指定的目标文件夹
以下是一个用Windows脚本实现自动获取当前路径后查找目录下面所有定义的文件类型并复制到自定义文件夹,然后将自定义文件夹及其包含的所有文件移动到指定文件夹的示例代码:
```
@echo off
setlocal enabledelayedexpansion
REM 获取当前路径
set "current_dir=%CD%"
REM 指定文件类型
set "file_type=*.txt"
REM 指定自定义文件夹
set "custom_folder=C:\CustomFolder"
REM 指定目标文件夹
set "target_folder=C:\TargetFolder"
REM 查找目录下所有指定类型的文件,并复制到自定义文件夹中
for /r "%current_dir%" %%i in (%file_type%) do (
copy "%%i" "%custom_folder%"
)
REM 移动自定义文件夹及其包含的所有文件到指定文件夹
move "%custom_folder%" "%target_folder%"
REM 输出移动后的路径
echo Custom folder and files moved to: %target_folder%
```
代码逐行解释:
- `@echo off`:关闭命令行窗口上的回显,以避免命令输出显示在屏幕上。
- `setlocal enabledelayedexpansion`:打开延迟变量扩展模式,以便在for循环中使用`!`符号读取变量值。
- `set "current_dir=%CD%"`:使用`%CD%`系统变量获取当前路径,并将其存储在`current_dir`变量中。
- `set "file_type=*.txt"`:指定要查找的文件类型,此处为`.txt`文件类型。
- `set "custom_folder=C:\CustomFolder"`:指定自定义的文件夹路径。
- `set "target_folder=C:\TargetFolder"`:指定目标文件夹路径。
- `for /r "%current_dir%" %%i in (%file_type%) do ( copy "%%i" "%custom_folder%")`:使用`for`循环遍历当前路径下的所有文件(包括子文件夹),并将符合指定文件类型的文件复制到自定义文件夹中。
- `move "%custom_folder%" "%target_folder%"`:将自定义文件夹及其包含的所有文件移动到指定文件夹中。
- `echo Custom folder and files moved to: %target_folder%`:输出移动后的路径。
阅读全文