以文件名命名,自动创建文件夹的批处理代码

wy 1月前

可以实现将文件拖放到批处理文件上后,自动创建以该文件名为名称的文件夹的 bat 代码:

@echo off
setlocal enabledelayedexpansion

:: 检查是否有文件被拖放过来
if "%~1"=="" (
    echo 请将文件拖放到本批处理文件上!
    pause
    exit /b 1
)

:: 处理拖放的文件
for %%f in (%*) do (
    :: 检查是否为文件(排除文件夹)
    if not exist "%%f\" (
        :: 获取文件名(不含扩展名)
        set "filename=%%~nf"
        
        :: 创建以文件名命名的文件夹
        if not exist "!filename!" (
            mkdir "!filename!"
            echo 已创建文件夹:!filename!
        ) else (
            echo 文件夹 "!filename!" 已存在,跳过创建
        )
    ) else (
        echo "%%f" 是文件夹,不进行处理
    )
)

pause

使用说明:

  1. 将上述代码复制到记事本中,保存为.bat文件(例如CreateFolderFromFile.bat
  2. 将需要处理的文件直接拖放到这个 bat 文件上
  3. 程序会自动创建以该文件名为名称的文件夹(不含文件扩展名)

功能特点:

  • 支持同时拖放多个文件,会为每个文件创建对应的文件夹
  • 如果文件夹已存在,会提示并跳过创建
  • 只处理文件,不处理文件夹(拖放文件夹会提示不处理)
  • 操作完成后会暂停显示结果,按任意键关闭窗口
例如:将文档.txt拖放到 bat 文件上,会创建名为文档的文件夹;将图片.jpg拖放上去,会创建图片文件夹。

 

这家伙太懒了,什么也没留下。

最新回复 (0)
全部楼主

你可以在 登录注册 后,对此帖发表评论!

返回