现在我制作的2.O出世
自动识别ZIP与7z并且输出的图片和压缩包名字一样间的便捷
全自动识别ZIP与Z7代码
@echo off
chcp 65001 > nul
setlocal enabledelayedexpansion
REM 检查是否存在 b.png 文件
if not exist "b.png" (
echo 没有找到 b.png 文件
pause
exit /b 1
)
REM 获取第一个匹配到的 7z 或 zip 文件名
for %%F in (*.7z *.zip) do (
set "archive_file=%%~nxF"
goto :break
)
:break
REM 如果没有找到 7z 或 zip 文件,则输出相应提示并退出
if not defined archive_file (
echo 没有找到 7z 或 zip 文件
pause
exit /b 1
)
REM 获取压缩文件名(不包含后缀)
for /F "delims=" %%A in ("!archive_file!") do (
set "archive_filename=%%~nA"
)
REM 合并文件
copy /b b.png+"!archive_file!" "!archive_filename!.png"
REM 提示消息
echo 一只废阿宅制作
pause
:end
如何实现图片复制给图片
for /F "delims=" %%A in ("!archive_file!") do (
set "archive_filename=%%~nA"
段代码是 Windows 批处理脚本中的一部分,它的作用是从变量 archive_file 中获取文件名,并将其赋值给变量 archive_filename。
让我逐行解释:
for /F "delims=" %%A in ("!archive_file!") do (:
这是一个 for 循环的开始,它会遍历由archive_file变量指定的文件(假设它是一个文件路径)。
/F
表示使用文件内容而不是文件列表进行循环。"delims="
指定了分隔符为空,这样就可以处理文件名中的空格。%%A
是用于循环的变量名,在每次迭代中,它会被设置为文件中的一行内容。
set "archive_filename=%%~nA":这行代码将循环变量%%A的文件名部分提取出来,并赋值给archive_filename变量。
%%~nA表示对循环变量%%A中的文件名部分进行变换,n表示仅获取文件名部分,而不包括路径和扩展名。
copy /b b.png+"!archive_file!" "!archive_filename!.png
:
copy /b b.png+"!archive_file!":这部分命令使用copy命令来将两个文件合并。
/b选项告诉copy命令以二进制模式合并文件,这对于合并图像文件通常是必要的。b.png是一个文件,archive_file是另一个文件,它们将被合并在一起。
"!archive_filename!.png":这部分指定了合并后的文件的名称。archive_filename变量保存了之前提取出的archive_file的文件名部分,加上.png扩展名,最终形成了合并后的文件名。
所以,整个命令的目的是将两个文件合并成一个新文件,并且新文件的名称基于 archive_file 的文件名部分。
废案2.0
copy 你图片名字.png/b+你压缩包名字.7z/b=生成的图片名字.png
如图中我举个例是 B是我第三个图片 a是我的压缩包 C是我生成的压缩包
copy b.png/b+a.7z/b=c.png
如何生成呢?
第一步
新建一个文件夹
第二步
拖入你的图片/压缩包
第三步
新建一个 文本.txt
第四步
双击你的鼠标打开文本
输入指令:copy b.png/b+a.7z/b=c.png
这里你需要把b.png a.7z记得换成你的图片名字和压缩包名字
第五步
然后右键 你的txt
修改里面的
.txt
把它改成
.bat
然后点确定
第六步
双击启动
这样你的 压缩包就变成了一张很大的图片
第七步
如何打开? 你只需要修改png变成7z或者zip即可
或者 右键选择打开方式 然后点选择其他应用找到你的 压缩软件程序 一样是可以打开










