无忧启动论坛

标题: 重启更换指定系统进入的快速方法(更新) [打印本页]

作者: 呆萌鼠    时间: 2024-9-9 16:42
标题: 重启更换指定系统进入的快速方法(更新)
本帖最后由 呆萌鼠 于 2024-9-9 22:12 编辑

                                                                 重启更换指定系统进入的快速方法


因原帖子无法更新,故重新开了此帖以更新,
加了识别系统的代码,貌似只对Windows友好,
  1. @echo off
  2. chcp 65001 >nul

  3. :: 检查是否以管理员身份运行
  4. net session >nul 2>&1
  5. if %errorLevel% neq 0 (
  6.     echo 请以管理员身份运行此脚本。
  7.     echo 正在尝试以管理员身份重新运行...
  8.     :: 重新以管理员身份运行
  9.     powershell -Command "Start-Process '%~f0' -Verb RunAs"
  10.     exit
  11. )

  12. :: 如果已是管理员权限,则执行以下命令
  13. setlocal enabledelayedexpansion

  14. REM 初始化变量
  15. set index=1

  16. REM 获取系统引导配置列表
  17. for /f "tokens=1,2,* delims= " %%A in ('bcdedit /enum ^| findstr "identifier description"') do (
  18.     if /i "%%A"=="identifier" (
  19.         REM 存储每个操作系统的标识符
  20.         set id!index!=%%B
  21.     ) else if /i "%%A"=="description" (
  22.         REM 存储每个操作系统的描述
  23.         set description=%%C

  24.         REM 如果描述前缀为 "Windows",我们直接显示它
  25.         REM 如果没有 "Windows" 前缀,就手动添加
  26.         if /i "!description:~0,8!"=="Windows " (
  27.             echo !index!: !description!
  28.         ) else (
  29.             echo !index!: Windows !description!
  30.         )
  31.         set /a index+=1
  32.     )
  33. )

  34. REM 提示用户选择系统
  35. set /p choice=请选择要启动的系统对应的数字(例如1, 2, 3...):

  36. REM 验证输入是否为有效数字
  37. if not defined id%choice% (
  38.     echo 输入无效,请重试。
  39.     pause
  40.     exit /b
  41. )

  42. REM 设置一次性启动项
  43. bcdedit /bootsequence !id%choice%!

  44. REM 重启系统
  45. shutdown /r /t 0
复制代码


不知道还有什么bug,谢谢各位坛友的热心反馈,在此表示万分感谢!
更新下载地址123pan.com/s/DdErVv-JBKHA
原帖子重启更换指定系统进入的快速方法 - 综合讨论区 - 无忧启动论坛 - Powered by Discuz! (wuyou.net)注意:系统名称必须要用纯英文和数字、不要带其他的符号及汉字、并且要中间加空格的正规格式,否则会显示不全或不显示!



作者: wn168cn@163.com    时间: 2024-9-9 16:52
感谢分享
作者: wc67    时间: 2024-9-9 17:01
谢谢分享!!
作者: zlq_hysy    时间: 2024-9-9 17:01
虽然显示不准,但是能启动目标。





作者: 渝垫老    时间: 2024-9-9 17:06
谢谢分享!!
作者: yyz2191958    时间: 2024-9-9 18:09
非常方便的办法 谢谢
作者: yc2428    时间: 2024-9-9 18:13

感谢分享
作者: 123hope    时间: 2024-9-9 18:57
加了个空格可以显示了
作者: 2011matrixvexx    时间: 2024-9-9 19:09
感谢楼主分享
作者: vaf    时间: 2024-9-9 19:32
对我的多系统不起作用.
作者: 2012andyle113    时间: 2024-9-9 19:33
可以,至少显示正常了
作者: 呆萌鼠    时间: 2024-9-9 22:57
可以固定到任务栏和桌面鼠标右键菜单


作者: wang1126    时间: 2024-9-10 05:56
谢谢楼主分享
作者: ffg121    时间: 2024-9-10 09:40
谢谢分享,
作者: 董大    时间: 2024-9-10 10:14
谢谢楼主分享!
作者: as8686886    时间: 2024-9-10 10:21
给楼主顶个赞,卤煮好厉害
作者: zylz9941    时间: 2024-9-10 10:33
膜拜大神
作者: fegr    时间: 2024-9-10 14:51
感谢分享
作者: yzqmxh    时间: 2024-9-11 10:40
谢谢分享
作者: fxssj    时间: 2024-9-11 15:44
谢谢分享,支持
作者: 八叶伞    时间: 6 天前
感谢分享
作者: 呆萌鼠    时间: 前天 21:21
本帖最后由 呆萌鼠 于 2024-9-19 12:03 编辑

更新2024-9-18
发现我的Windows 11 23H2专业版的cmd可以设置默认编码为UTF-8格式,
方法:打开设置→时间和语言→语言和区域→管理语言设置→管理→更改系统区域设置→勾选---使用UTF-8提供的全球语言支持→确定→确定→重启电脑→验证→打开cmd→输入chcp→显示Active code page: 65001→成功更改。65001代表UTF-8格式。Windows 10系统也应该差不多设置。注意:改动后有少部分软件会出现乱码,请自己酌情更改。代码修改去掉了第二行
  1. @echo off

  2. :: 检查是否以管理员身份运行
  3. net session >nul 2>&1
  4. if %errorLevel% neq 0 (
  5.     echo 请以管理员身份运行此脚本。
  6.     echo 正在尝试以管理员身份重新运行...
  7.     :: 重新以管理员身份运行
  8.     powershell -Command "Start-Process '%~f0' -Verb RunAs"
  9.     exit
  10. )

  11. :: 如果已是管理员权限,则执行以下命令
  12. setlocal enabledelayedexpansion

  13. REM 初始化变量
  14. set index=1

  15. REM 获取系统引导配置列表
  16. for /f "tokens=1,2,* delims= " %%A in ('bcdedit /enum ^| findstr "identifier description"') do (
  17.     if /i "%%A"=="identifier" (
  18.         REM 存储每个操作系统的标识符
  19.         set id!index!=%%B
  20.     ) else if /i "%%A"=="description" (
  21.         REM 存储每个操作系统的描述
  22.         set description=%%C

  23.         REM 如果描述前缀为 "Windows",我们直接显示它
  24.         REM 如果没有 "Windows" 前缀,就手动添加
  25.         if /i "!description:~0,8!"=="Windows " (
  26.             echo !index!: !description!
  27.         ) else (
  28.             echo !index!: Windows !description!
  29.         )
  30.         set /a index+=1
  31.     )
  32. )

  33. REM 提示用户选择系统
  34. set /p choice=请选择要启动的系统对应的数字(例如1, 2, 3...):

  35. REM 验证输入是否为有效数字
  36. if not defined id%choice% (
  37.     echo 输入无效,请重试。
  38.     pause
  39.     exit /b
  40. )

  41. REM 设置一次性启动项
  42. bcdedit /bootsequence !id%choice%!

  43. REM 重启系统
  44. shutdown /r /t 0
复制代码

下载地址123pan.com/s/DdErVv-IXKHA








欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3