|
本帖最后由 nttwqz 于 2017-11-7 11:20 编辑
不知道上次谁提问的,差不多
- @echo off
- rem 自动请求以管理员权限运行
- reg query HKU\S-1-5-20>nul 2>nul || echo CreateObject^("Shell.Application"^).ShellExecute "%~f0", "", "", "runas", 1 > "%temp%\getadmin.vbs" && cscript //b "%temp%\getadmin.vbs" && exit /b & del "%temp%\getadmin.vbs" /f /q>nul 2>nul
- rem 获取本机启动项的GUID,即displayorder列表
- set n=1
- setlocal enabledelayedexpansion
- bcdedit /enum {bootmgr} /v >%temp%\bootlist.txt
- rem 获取displayorder所在的行号
- for /f "tokens=1 delims=:" %%a in ('type "%temp%\bootlist.txt" ^| findstr /n "^displayorder"') do set /a skip=%%a-1
- rem 忽略displayorder之前的行从而节省时间
- for /f "skip=%skip% tokens=1,2" %%a in ('type "%temp%\bootlist.txt"') do (
- if /i "%%a"=="default" set "default=%%b"
- if /i "%%a"=="displayorder" set boot-1=%%b
- echo %%a | findstr "{.*}" >nul 2>nul && (
- set /a n+=1
- set boot-!n!=%%a
- )
- )
- del /f /q "%temp%\bootlist.txt"
- :menu
- for /l %%a in (1,1,!n!) do (
- echo; [%%a] *****************************************************************
- echo;
- bcdedit /enum !boot-%%a! /v | findstr /r "!boot-%%a! device osdevice description"
- echo;
- )
- echo;
- set /p input=请选择您要删除的启动项:
- cls & bcdedit /enum !boot-%input%! /v & echo;
- echo;你确定要删除上面的启动项吗? Y 继续
- set /p ok=
- if /i not %ok%==y goto menu
- bcdedit /delete !boot-%input%! /cleanup /f
- pause
复制代码 |
评分
-
查看全部评分
|