You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CMD菜单使用start .命令重复打开同一路径窗口问题求助

解决CMD菜单重复打开同一文件夹的问题

哦,这个问题我之前也碰到过!核心原因是你用的start .默认是打开当前工作目录,而你的脚本在选择不同选项后,并没有切换到对应的目标路径,所以每次执行start .都会复用之前的工作目录,自然打开的还是同一个文件夹。

给你两个简单有效的解决方案:

方案1:直接用start命令指定目标路径

不用依赖当前工作目录,直接把要打开的路径作为参数传给start命令就行。注意start的语法:第一个参数是窗口标题(可以留空,但要写""占位),第二个参数就是目标文件夹路径。

示例脚本:

@echo off
:menu
cls
echo === 文件夹快速打开菜单 ===
echo 1. 打开 G:\Folder_1
echo 2. 打开 G:\SUBFOLDER\Folder_2
echo 3. 退出菜单
set /p user_choice=请输入选项编号: 

if "%user_choice%"=="1" (
    start "" "G:\Folder_1"
    goto menu
)
if "%user_choice%"=="2" (
    start "" "G:\SUBFOLDER\Folder_2"
    goto menu
)
if "%user_choice%"=="3" exit

echo [!] 无效选项,请重新输入
pause >nul
goto menu

方案2:先切换工作目录再执行start .

如果习惯用start .,可以先通过cd /d命令切换到目标路径(/d参数是跨盘符切换必须的,比如从C盘切到G盘),再执行start .。

示例脚本:

@echo off
:menu
cls
echo === 文件夹快速打开菜单 ===
echo 1. 打开 G:\Folder_1
echo 2. 打开 G:\SUBFOLDER\Folder_2
echo 3. 退出菜单
set /p user_choice=请输入选项编号: 

if "%user_choice%"=="1" (
    cd /d "G:\Folder_1" && start .
    goto menu
)
if "%user_choice%"=="2" (
    cd /d "G:\SUBFOLDER\Folder_2" && start .
    goto menu
)
if "%user_choice%"=="3" exit

echo [!] 无效选项,请重新输入
pause >nul
goto menu

关键细节提醒

  • 如果你的文件夹路径包含空格,一定要用双引号把路径括起来,避免start或cd命令识别错误。
  • 方案1的优势是不会改变脚本的当前工作目录,后续如果有其他依赖工作目录的操作不会受影响;方案2则更贴近你原来的使用习惯。

内容的提问来源于stack exchange,提问作者Henrique Gomes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:13:33