Board logo

标题: [文件操作] [已解决]批处理命令start打开同路径下的同名文件、程序和文件夹的问题 [打印本页]

作者: SakuraCodes    时间: 2022-8-29 22:24     标题: [已解决]批处理命令start打开同路径下的同名文件、程序和文件夹的问题

本帖最后由 SakuraCodes 于 2022-9-16 17:06 编辑

执行以下代码会默认打开csgo.exe程序,实际希望打开同路径下的csgo文件夹
bat萌新望大佬指点
  1. @echo off
  2. for /f "tokens=2* skip=2" %%a in ('reg query "HKCU\SOFTWARE\Valve\Steam" /v "SteamPath"') do set SteamPath=%%b
  3. start "" "%SteamPath%\steamapps\common\Counter-Strike Global Offensive\csgo"
复制代码

作者: Batcher    时间: 2022-8-30 08:46

回复 1# SakuraCodes


第3行结尾加一个\
start "" "%SteamPath%\steamapps\common\Counter-Strike Global Offensive\csgo\"
作者: SakuraCodes    时间: 2022-9-13 18:48

本帖最后由 SakuraCodes 于 2022-9-13 18:52 编辑

回复 2# Batcher 依旧不行,仍是调用程序(这个报错是无法打开游戏的报错与问题无关)
作者: flashercs    时间: 2022-9-14 06:37

  1. @echo off
  2. for /f "tokens=2* skip=2" %%a in ('reg query "HKCU\SOFTWARE\Valve\Steam" /v "SteamPath"') do set SteamPath=%%b
  3. start "" explorer.exe "%SteamPath%\steamapps\common\Counter-Strike Global Offensive\csgo"
复制代码

作者: WindCat    时间: 2022-9-15 00:01

本质问题是优先级问题,执行前可以先改变当前路径(如系统路径以避免这类问题)
或者直接cd /d "%SteamPath%\steamapps\common\Counter-Strike Global Offensive\csgo\"
检查errorlevel
再start "" %cd%正好可以确认文件夹是否存在以避免其他问题
作者: SakuraCodes    时间: 2022-9-16 17:05

回复 5# WindCat 谢谢大佬,成功解决啦
作者: SakuraCodes    时间: 2022-9-16 17:08

回复 4# flashercs 加上explorer.exe也不行,它会调用上一个bat文件
作者: SakuraCodes    时间: 2022-9-16 17:31

回复 5# WindCat 好像还是不行,
  1. @echo off
  2. for /f "tokens=2* skip=2" %%a in ('reg query "HKCU\SOFTWARE\Valve\Steam" /v "SteamPath"') do set SteamPath=%%b
  3. cd /d %SteamPath%/steamapps/common/Counter-Strike Global Offensive/csgo/
  4. start "" "%cd%"
复制代码

作者: SakuraCodes    时间: 2022-9-16 17:33

回复 5# WindCat 不清楚怎么检查errorlevel
作者: SakuraCodes    时间: 2022-9-16 17:34

回复 9# SakuraCodes 我最后是定位到下级目录再跳到上级解决的
作者: Batcher    时间: 2022-9-16 18:08

回复 8# SakuraCodes


第4行有空格需要加引号
cd /d "%SteamPath%/steamapps/common/Counter-Strike Global Offensive/csgo/"




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2