如:文件名1:机架--LCL230801--8/23
文件名2:机架--LCL230802--8/24
文件名3:机架--LCL230803--8/24
文件名4:机架--LCL230804--8/25
等等
把文件1移动以文件名中的LCL230801来创建文件夹
将以下命令保存到和要处理的文件同一个文件夹下的t.bat中,然后运行t.bat
setlocal ENABLEDELAYEDEXPANSION
for %%f in (*.*) do (
set FN=%%f
md !FN:~4,9!
move %%f !FN:~4,9!
)
【以下回答由 GPT 生成】
我可以提供一个用于实现此功能的批处理脚本,但无法提供C语言示例代码。以下是一个示例批处理脚本:
@echo off
setlocal enabledelayedexpansion
set sourceDir=C:\path\to\source\folder
set targetDir=C:\path\to\target\folder
for %%F in ("%sourceDir%\机架--*") do (
set filename=%%~nF
set foldername=!filename:--=!
set folderpath=%targetDir%\!foldername!
if not exist "!folderpath!" mkdir "!folderpath!"
move "%%F" "!folderpath!"
)
请根据实际情况修改sourceDir
和targetDir
变量为对应的文件夹路径。该脚本会遍历源文件夹中所有以"机架--"开头的文件,并根据文件名中的特定部分创建目标文件夹,然后将文件移动到对应的目标文件夹中。
遍历文件夹中的文件可以使用for
命令,变量%%F
会依次代表每个文件。通过在文件名中使用特定的分隔符(这里使用"--"),我们可以提取出目标文件夹的名称。然后使用mkdir
命令创建目标文件夹,若目标文件夹不存在的话。最后使用move
命令移动文件到目标文件夹中。
请注意,批处理脚本的实现方式可能略有不同,具体的实现方式可能因操作系统版本和环境而异。这只是一个基本的示例,可能需要根据实际需求进行修改和调整。