批处理当前路径问题

东之小手冰凉 2018-05-24 12:40:36
当前目录为“C:\ALL_SCADA”,该目录底下有2个批处理(一键启动采集程序.bat,StartAll.bat),一键启动采集程序.bat定时启动StartAll.bat,StartAll.bat代码中获取当前目录变成系统目录,获取当前路径(!cd!和%cd%),一键启动采集程序.bat中当前目录是“C:\ALL_SCADA”再调用StartAll.bat就变成系统目录,我不想把路径写死,哪位大神能把StartAll.bat中存放的的当前路径变成存放的路径“C:\ALL_SCADA”。
...全文
1484 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
蒋晟 2018-06-17
  • 打赏
  • 举报
回复
为啥把逻辑要写死,只能处理当前目录下的文件? 完全可以用参数传目录名嘛 比如一键启动采集程序.bat 目标目录路径 其他参数…… 批处理里面用%1代表第一个单数,%2代表第二个参数,以此类推。
  • 打赏
  • 举报
回复
先用环境变量保存某个路径(无关于有几个批处理,只要当前cmd没退出就一直有效),之后在需要的时候恢复路径,你理解不了吗
东之小手冰凉 2018-06-01
  • 打赏
  • 举报
回复
你还没搞懂我说的意思,我用1号批处理去启动2号批处理,结果2号批处理的当前路径变成了系统目录,1号批处理当前目录是正常的,如何把2号批出的当前目录和1号批处理的一样(这两个批处理是在同一个文件夹下)。
  • 打赏
  • 举报
回复
我说的意思是可以用环境变量保存路径,以后恢复使用,不是让你写死。 完全可以先: set cur_path=%cd% 之后使用%cur_path%就是当初保存的路径
东之小手冰凉 2018-05-25
  • 打赏
  • 举报
回复
这样写死路径发给别人用都要设置路径太麻烦了,用的人多每人都要设置,或者说你部署采集程序的电脑越多工作量越大。
  • 打赏
  • 举报
回复
可以用环境变量保存路径: set cur_path=C:\ALL_SCADA 之后就可以通过%cur_path%来使用

3,423

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 其他开发语言
社区管理员
  • 其他开发语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧