代码还是错的;文件类型未区分
时间: 2023-07-09 14:17:41 浏览: 169
非常抱歉,之前的代码还有问题,以下是一个更正常的实现上述功能的 Windows 批处理脚本代码:
```
@echo off
set folder_names=程序模型 工艺规程 沟通记录
set destination_folder=工艺文件
for %%i in (%folder_names%) do (
if not exist "%%~i" md "%%~i"
)
for %%f in (*.*) do (
for %%i in (%folder_names%) do (
if "%%~xf"==".prt" if "%%~i"=="程序模型" copy "%%f" "%%~i\"
if "%%~xf"==".cxp" if "%%~i"=="工艺规程" copy "%%f" "%%~i\"
if "%%~xf"==".doc" if "%%~i"=="沟通记录" copy "%%f" "%%~i\"
)
)
for %%i in (%folder_names%) do (
xcopy "%%~i" "%destination_folder%\%%~i\" /s /e /i
rd "%%~i" /s /q
)
```
这个脚本首先使用 `set` 命令定义需要处理的文件夹名称和目标文件夹名称。然后,使用 `if not exist` 命令检查对应的文件夹是否存在,如果不存在则创建它。
接下来,使用双重 `for` 循环遍历当前目录中的所有文件,并根据文件类型和目标文件夹名称将文件复制到对应的文件夹中。这里使用了多个 `if` 语句来判断文件类型和目标文件夹名称是否匹配。
最后,使用 `xcopy` 命令将每个文件夹复制到指定目录下的工艺文件夹中,然后删除原始的三个文件夹。
阅读全文