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