Windows常用脚本总结

2023年8月7日 17:07:28

Windows常用脚本放到了Gitee。项目地址👉gitee.com/javakam/win...

常用脚本(Batchfile & VBScript)

1. 一键启动.bat

一次双击开启多个软件, 不用逐个软件双击打开, 非常方便!

vb 复制代码
@echo off
mode con lines=30 cols=100
title= 一键启动
:main
cls
color 2e
echo %time%
echo.Martin's Blog  https://javakam.github.io

color 1f
echo.-----------------------------------------------------------

echo Starting QQ...
start "" "C:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe"

echo Starting WeChat...
start "" "C:\Program Files\Tencent\WeChat\WeChat.exe"

:end
echo 执行完成

2. Win11改用传统右键菜单.bat

切换Win11的右键菜单 或 Win10旧版菜单。例如切换到Win10旧版右键菜单:

vb 复制代码
@echo off
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )


@echo off
echo. 
echo ============================================= 
echo 右键菜单类型
echo 1 (Win10旧版右键菜单)
echo 2 (Win11新版右键菜单)
echo ============================================= 

:select
set /p opt=请选择操作:
if %opt%==1 (
    echo 正在开启Win10旧版右键菜单》》》》》》》》》
	reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve
)
if %opt%==2 (
    echo 正在恢复Win11新版右键菜单》》》》》》》》》
	reg delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" /f
)

@echo off
echo *************************************
echo *                                   *
echo *          重启任务管理器...        *
echo *                                   *
echo *************************************
taskkill /f /im explorer.exe & start explorer.exe

pause

两种菜单样式随时切换, 很方便。

3. Java多版本切换

①以java1.8和java17为例, 目录结构为:

②环境变量配置

Path:

SwitchJDK.bat源码及运行效果:

vb 复制代码
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"

@echo off
rem --- Base Config 配置JDK的安装目录 ---
:init 
set JAVA_HOME8=C:\fastwork\Java\jdk1.8
set JAVA_HOME17=C:\fastwork\Java\jdk17
:start 
echo 当前使用的JDK 版本: 
java -version 
echo. 
echo ============================================= 
echo jdk版本列表 
echo 1 (1.8)
echo 2 (17)
echo ============================================= 

:select
set /p opt=请选择jdk版本: 
if %opt%==1 (
    set TARGET_JAVA_HOME=%JAVA_HOME8%
)
if %opt%==2 (
    set TARGET_JAVA_HOME=%JAVA_HOME17%
)

echo 当前选择的Java路径:%TARGET_JAVA_HOME%

wmic ENVIRONMENT where "name='JAVA_HOME'" delete
wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%TARGET_JAVA_HOME%"

rem -- refresh env ---
call RefreshEnv

echo 请按任意键退出!
pause>nul

注: 修改环境变量后, 必须使用Win+R打开cmd的新窗口,再输入java -version进行验证才准确。此时Android Studio中的Terminal验证显示仍是旧的java环境, 重启AS即可。

4. Windows设置/取消定时关机

定时关机3H.bat

vb 复制代码
Shutdown -s -t 10800

取消定时关机.bat

vb 复制代码
Shutdown -a

5. 控制某个服务的开启/关闭

以某品牌移动硬盘的服务为例: 右键开始选择计算机管理->服务和应用程序中双击服务->找到指定服务并查看属性

把服务名称放到net start/stop 后面即可:

vb 复制代码
@echo off
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )


@echo off
echo. 
echo ============================================= 
echo 操作类型
echo 1 (开启服务)
echo 2 (关闭服务)
echo ============================================= 

:select
set /p opt=请选择操作:
if %opt%==1 (
    echo 开启服务
	net start "TosHddscSvc"
)
if %opt%==2 (
    echo 关闭服务
	net stop "TosHddscSvc"
)

::pause
setlocal enabledelayedexpansion

echo 执行结束,脚本5秒后自动退出...

set /a count=5
:loop
echo 剩余时间:%count% 秒
timeout /t 1 >nul
set /a count-=1
if %count% gtr 0 (
    goto loop
) else (
    echo 脚本退出
)

endlocal
exit

执行效果(此处设置了bat倒计时自动退出):

设置开机启动脚本

就两步: ①新建xxx.vbs, 设置需要开机启动的bat文件名:

vb 复制代码
set ws=wscript.createobject("wscript.shell")
ws.run "xxxxxx.bat /start",0

②把vbs脚本源文件或快捷方式放到

C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

目录下, 开机后会自动执行。如下图所示:

附1 jupyter开机启动vbs

jupyter_startup.vbs

vbs 复制代码
Dim wsh
Set wsh = createobject("wscript.Shell")
'1. 使用配置文件启动 jupyter_notebook_config.py
'wsh.run "cmd /c jupyter notebook --no-browser", 0, true
'2. 直接进入路径启动[推荐]
wsh.run "cmd /c jupyter notebook --notebook-dir='C:\fastwork\Python\JupyterNotebook' --no-browser", 0, true
Set wsh = Nothing

附2 redis开机启动vbs

service_redis_startup.vbs

vbs 复制代码
set ws=wscript.createobject("wscript.shell")
ws.run "service_start.bat /start",0

service_start.bat

vb 复制代码
::启动redis的命令
@echo off
::这是简单的输出,相当于java中的system.out.println()
echo redis-server start......
::设置启动窗口的标题
title redis-server
::定义一个变量ENV_HOME
set ENV_HOME="C:\fastwork\Redis"
C:
::设置启动窗口的颜色
color 0a
cd %ENV_HOME%
redis-server.exe redis.windows.conf
exit

常用jar包

源码地址: gitee.com/javakam/Fil...

使用方法: java -jar xxx.jar

FileCleaner.jar 用于清理Android/Java项目的临时编译目录,如build classes target 等

FileSizeCalculator.jar 用于查看目录中所有文件的大小,目前仅支持MB为单位,便于删除大文件

下载地址

gitee.com/javakam/win...

相关推荐
Cerman21 分钟前
QEMU启动OVMF shell超时分析
c语言·windows·经验分享
冬奇Lab1 小时前
开源项目第194期:deepseek-harness — DeepSeek 出品的 AI Agent 开发框架,万物皆插件
人工智能·开源·deepseek
yuhaiqiang1 小时前
从这两件事就能看出 vibecoding 距离专业作品差距有多大?AI 能抹平技术,但抹不平品味 !
前端·后端·程序员
小贺儿开发2 小时前
Unity 程序员编曲花絮:汪峰《河流》细节修复
科技·学习·unity·程序员·音乐·demo·写代码
阿里嘎多学长2 小时前
2026-08-20 GitHub 热点项目精选
开发语言·程序员·github·代码托管
一次旅行2 小时前
2026‑08‑21 AI产业深度解读|GUI智能体、投机解码、十亿级向量检索、国产Base模型开源
人工智能·开源
呆呆敲代码的小Y3 小时前
10 分钟搞懂 cua:开源 AI 操作电脑基础设施,附 Python 沙箱与 Agent 上手代码
人工智能·python·开源·ai agent·awesome·llm应用·cua
分布式存储与RustFS3 小时前
从 MinIO 到 RustFS:不只是换语言,更是换一份协议自由
云原生·开源·对象存储·分布式存储·s3·rustfs·性能基准
两万五千个小时3 小时前
DeepSeek Harness 从 0 开始:10 Hooks 模块(钩子协议)
人工智能·程序员·架构
小妖同学学AI4 小时前
60.8k星!开源金融数据神器OpenBB:连接一切数据,让分析师、量化交易员和AI智能体如虎添翼!
人工智能·金融·开源