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

[其他] [已解决] 批处理调用自身 如何 执行不同命令

[复制链接]
发表于 2023-3-8 00:45:34 | 显示全部楼层 |阅读模式
本帖最后由 dong3626 于 2023-3-8 14:22 编辑

需求如题, 路过的大神请指教

谢谢大神,不但技术过硬,还敬业!
  1. @echo off

  2. if defined errorlevel (if %errorlevel%==6 (goto Tiao))
  3. echo.
  4. echo 批处理第一次执行
  5. :: do something
  6. echo 任意键退出当前批处理执行过程并传递errorlevel,并重新打开此批处理
  7. pause
  8. :: 改变errorlevel 并退出,传递errorlevel给下一个批处理
  9. start C:\Users\Go\Desktop\aaa.bat
  10. exit /b 6
  11. :Tiao
  12. echo =========================
  13. echo.
  14. echo 批处理再次执行,跳过了上面的命令
  15. pause
复制代码

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2023-3-8 01:26:04 | 显示全部楼层
本帖最后由 newswan 于 2023-3-8 01:30 编辑



  1. if %1 == xxx goto:t

  2. :a
  3. start C:\Users\Go\Desktop\aaa.bat xxx


  4. :Tiao
  5. echo =========================
  6. echo.
  7. echo 批处理再次执行,跳过了上面的命令
  8. pause

复制代码
 楼主| 发表于 2023-3-8 12:52:04 | 显示全部楼层
还是不正常啊,,请指教

echo off
if not defined "%1" (goto :Ycl) else (goto :Start)

:Ycl
echo.
echo %1
echo 批处理预处理
echo 暂停后应跳过这里
pause
start C:\Users\Go\Desktop\aaa.bat 8
exit


:Start
echo =========================
echo.
echo %1
echo 预处理完成
echo 跳过上面的预处理,继续执行
pause
发表于 2023-3-8 13:30:07 | 显示全部楼层

  1. echo off
  2. if "%1" == "" (goto :Ycl) else (goto :Start)

  3. :Ycl
  4. echo.
  5. echo %1
  6. echo 批处理预处理
  7. echo 暂停后应跳过这里
  8. pause
  9. start "" "%~f0" 8
  10. exit


  11. :Start
  12. echo =========================
  13. echo.
  14. echo %1
  15. echo 预处理完成
  16. echo 跳过上面的预处理,继续执行
复制代码

评分

参与人数 1技术 +1 收起 理由
dong3626 + 1 感谢给帖子标题标注[已解决]字样

查看全部评分

 楼主| 发表于 2023-3-8 14:02:51 | 显示全部楼层
非常感谢  我消化一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 01:20 , Processed in 0.015398 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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