当前位置: 首页 > news >正文

使用batch脚本调用另一个batch脚本遇到的问题

问题

最近写了两个batch脚本:a.bat 和 b.bat,a.bat中使用call b.bat调用执行b.bat,b.bat里面会使用start xx.exe启动一个会一直运行的可执行程序。执行之后发现,a.bat里面调用b.bat之前的日志会打印,b.bat里面的日志也可以正常打印,但是a.bat里面call b.bat语句后面的日志却不打印。而且当执行比如 : a.bat param1之后,再执行a.bat param2发现,命令行会提示:另一个程序正在使用此文件,进程无法访问。什么鬼,a.bat param1明明已经执行完了。

探索

难道是b.bat里面的start语句会阻塞后续的执行,但是实际情况不是的,b.bat里面start语句后面的语句可以正常执行并打印log, 说明start命令会另起一个进程执行,但不会影响b.bat的执行。但是为什么会影响到a.bat的执行呢?

解决

既然start不会影响其所在batch脚本文件的执行,那么尝试将b.bat整体迁移到a.bat里面,取代在a.bat里面使用call命令调用b.bat, 即在a.bat里面直接使用start命令。果不其然,改动之后问题解决。

问题虽然解决,但还是不知道为什么会这样,大家有知道原因的吗?欢迎留言。

相关文章:

  • uniapp app 端获取陀螺仪数据的实现攻略
  • 代理式AI(Agentic AI):2025年企业AI转型的催化剂
  • 分割回文串例题-区分组合回溯与最优动态规划
  • Transformer中的三种注意力机制
  • react-14defaultValue(仅在首次渲染时生效)和value(受 React 状态控制)
  • 如何解决Kafka集群中Broker磁盘IO瓶颈?
  • 数智管理学(七)
  • 永磁同步电机控制算法-反馈线性化直接转矩控制
  • 华为策略路由
  • Facebook隐私保护措施的优缺点解析
  • 如何设计Kafka的高可用跨机房容灾方案?(需要实战,未实战,纯理论)
  • Kafka的Log Compaction原理是什么?
  • 2025.5.6总结
  • Leetcode Hot 100 三数之和
  • 01硬件原理图
  • API 开发实战:基于京东开放平台的实时商品数据采集接口实现
  • 【C/C++】new关键字解析
  • 探索开源大模型体系:当今AI的引领者
  • ActiveMQ 安全机制与企业级实践(二)
  • 计算广告-广告智能出价原理-出价的数学建模
  • 商务部:自5月7日起对原产于印度的进口氯氰菊酯征收反倾销税
  • 新质观察|“模速空间”如何成为“模范空间”
  • 从陈毅杯到小应氏杯,五一长假上海掀起围棋热
  • 探访小剧场、直播间、夜经济:五一假期多地主官调研新消费
  • 英国传统两党受挫地方选举后反思,改革党异军突起“突破想象”
  • 美国鞋类巨头请求白宫豁免关税,称已构成“生存威胁”