用GPT写了一个,你试试
https://f.ws59.cn/f/dwsa8joghow 复制链接到浏览器打开
以下是一个批处理脚本,它可以实现你描述的功能。请注意,这个脚本是基于Windows系统的,并假设你希望按照文件名和关键字进行分类。在脚本中,我使用了一些基本的命令来实现文件和文件夹的操作,如mkdir (创建文件夹)、move (移动文件)、findstr (在文本中查找字符串)等。你可以根据实际情况进行修改和扩展。
@echo off
setlocal enabledelayedexpansion
rem 设置工作目录
set "source_directory=C:\Source"
set "destination_directory=C:\Destination"
rem 遍历源目录中的文件
for /r "%source_directory%" %%F in (*) do (
rem 获取文件名和扩展名
set "filename=%%~nxF"
rem 获取文件类型(扩展名)
for /f "tokens=2 delims=." %%A in ("%%~xF") do set "filetype=%%A"
rem 第一级分类:产品型号
rem 你可以在这里根据实际情况修改分类规则
set "product_type=Unknown"
if "!filename:~0,3!"=="ABC" (
set "product_type=ABC"
) else if "!filename:~0,3!"=="DEF" (
set "product_type=DEF"
) else (
set "product_type=Other"
)
rem 第二级分类:内容形式-图/视频
rem 假设图像以.jpg结尾,视频以.mp4结尾
if /i "!filetype!"=="jpg" (
set "content_type=Image"
) else if /i "!filetype!"=="mp4" (
set "content_type=Video"
) else (
set "content_type=Other"
)
rem 创建目标文件夹路径
set "destination_folder=%destination_directory%\!product_type!\!content_type!"
rem 创建文件夹(如果不存在)
if not exist "!destination_folder!" mkdir "!destination_folder!"
rem 移动文件到目标文件夹
move "%%F" "!destination_folder!"
)
rem 第三级分类:根据关键字新建文件夹
rem 假设你想在红色文件夹中创建型号文件夹
for /d %%D in ("%destination_directory%\*") do (
rem 判断文件夹名称是否包含关键字
echo %%~nxD | findstr /i "红色" >nul
if not errorlevel 1 (
rem 如果文件夹名称包含关键字,则创建型号文件夹
mkdir "%%D\型号"
)
)
echo 操作完成!
endlocal
请注意以下几点:
- 修改源目录和目标目录:将
source_directory 和 destination_directory 的值修改为你的源文件目录和目标文件目录的路径。
- 修改分类规则:当前脚本中的分类规则是示例性的,请根据实际情况修改。例如,可以根据文件名中的特定字符进行分类,也可以根据文件的创建日期、大小等进行分类。
- 扩展分类规则:如果需要更多的分类级别或更复杂的分类规则,可以扩展脚本以满足你的需求。
- 谨慎操作:在运行脚本之前,请备份你的文件。脚本会移动文件,因此务必谨慎操作,以免意外删除或移动重要文件。
你可以将以上脚本保存为 .bat 文件,并在Windows系统中执行。执行完成后,它会根据你的分类规则将文件移动到相应的文件夹中,并在包含特定关键字的文件夹中创建新的文件夹。
|