找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 21698|回复: 10

10元请问调用debug写入exe的BAT代码的问题在哪?

  [复制链接]
发表于 2019-8-8 10:40:04 | 显示全部楼层 |阅读模式
想用批处理同时写出两个exe文件,请问一下为什么call:add_1时1.exe可以正常写出但是一到call:2时就没法写出了顺便问一下 more <"%~f0" +1|debug>nul 是读取整个文件第一行后所有的内容的内容给debug吗,能否用more读取指定范围内的数据给debug

call:add_1
if not exist 1.exe (echo no find.&pause>nul&exit) else (echo finish&pause>nul)

call:add_2
if not exist 2.exe (echo no find.&pause>nul&exit) else (echo finish&pause>nul&exit)

:add_1
pushd %tmp%\t1.17&&more <"%~f0" +1|debug>nul&&popd&&copy/b %tmp%\t1.17\t* "1.exe"&&rd/s/q %tmp%\t1.17
e100 4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00
... ... ... ...
n t3
rcx
B232
w
q
goto:eof


:add_2
pushd %tmp%\t1.17&&more <"%~f0" +1|debug>nul&&popd&&copy/b %tmp%\t1.17\t* "2.exe"&&rd/s/q %tmp%\t1.17
e100 4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00
... ... ... ...
n t3
rcx
B232
w
:goto:eof
发表于 2019-8-9 12:14:07 | 显示全部楼层
本帖最后由 zaqmlp 于 2019-8-9 12:31 编辑
  1. @echo off
  2. cd /d "%~dp0"
  3. for /l %%a in (1 1 2) do (
  4.     for /f "delims=:" %%b in ('type "%~f0"^|findstr /n "^:begin_%%a$"') do (
  5.         for /f "delims=:" %%c in ('type "%~f0"^|findstr /n "^:end_%%a$"') do call :loop %%a %%b %%c
  6.     )
  7.    
  8. )
  9. pause&exit
  10. :loop
  11. echo;%1[%2 %3]
  12. (for /f "tokens=1* delims=:" %%d in ('type "%~f0"^|findstr /n .*') do (
  13.     if %%d gtr %2 (if %%d lss %3 (echo;%%e))
  14. ))>"%tmp%\t.t"
  15. md "%tmp%\t1.17" 2>nul
  16. pushd %tmp%\t1.17&&type "%tmp%\t.t"|debug>nul&&popd&&copy/b %tmp%\t1.17\t* "%1.exe"&&rd/s/q %tmp%\t1.17
  17. exit /b
  18. :begin_1
  19. e100 4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00
  20. ... ... ... ...
  21. n t3
  22. rcx
  23. B232
  24. w
  25. q
  26. :end_1
  27. :begin_2
  28. e100 4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00
  29. ... ... ... ...
  30. n t3
  31. rcx
  32. B232
  33. w
  34. q
  35. :end_2
复制代码
 楼主| 发表于 2019-8-9 13:55:24 | 显示全部楼层
回复 2# zaqmlp


  嗯嗯,其实我是要写三个文件的,直接加入就好了吗
发表于 2019-8-9 13:58:44 | 显示全部楼层
回复 3# 小渣飞
提问题别挤牙膏,参照1、2的格式加入
……
for /l %%a in (1 1 3) do (
……
:begin_3
……
:end_3
 楼主| 发表于 2019-8-9 14:16:36 | 显示全部楼层
回复 4# zaqmlp


    好我测试一下,但是其中有一个文件为bmp格式的图片最后一个问题了=-=
发表于 2019-8-9 14:22:28 | 显示全部楼层
回复 5# 小渣飞

先付款再说
 楼主| 发表于 2019-8-9 14:34:55 | 显示全部楼层
回复 6# zaqmlp


    转了你看看
发表于 2019-8-9 14:40:29 | 显示全部楼层
发表于 2019-8-9 15:38:37 | 显示全部楼层
more <"%~f0" +1|debug>nul 是读取整个文件第一行后所有的内容的内容给debug吗

是的
能否用more读取指定范围内的数据给debug

不能
 楼主| 发表于 2019-8-10 10:41:25 | 显示全部楼层
回复 9# Batcher


    嗯嗯谢谢指点
 楼主| 发表于 2019-8-10 14:03:17 | 显示全部楼层
回复 2# zaqmlp


    T文件到T10以上的时候copy合并的时候顺序会出错
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 04:13 , Processed in 0.020158 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表