可以实现将文件拖放到批处理文件上后,自动创建以该文件名为名称的文件夹的 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
- 将上述代码复制到记事本中,保存为
.bat文件(例如CreateFolderFromFile.bat)
- 将需要处理的文件直接拖放到这个 bat 文件上
- 程序会自动创建以该文件名为名称的文件夹(不含文件扩展名)
- 支持同时拖放多个文件,会为每个文件创建对应的文件夹
- 如果文件夹已存在,会提示并跳过创建
- 只处理文件,不处理文件夹(拖放文件夹会提示不处理)
- 操作完成后会暂停显示结果,按任意键关闭窗口
例如:将文档.txt拖放到 bat 文件上,会创建名为文档的文件夹;将图片.jpg拖放上去,会创建图片文件夹。
这家伙太懒了,什么也没留下。