关于bat:bat-批处理脚本-一键开启和关闭-Windows-系统代理

开启代理(将脚本中的 IP:PORT 换成代理服务器的地址和端口): @echo off echo 开始开启零碎代理,请稍候...echo=reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f >nul 2>nulreg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "IP:PORT" /f >nul 2>nulecho 零碎代理已开启,请按任意键敞开本窗口...pause>nul敞开代理: @echo off echo 正在关闭系统代理,请稍候...echo=reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f >nul 2>nulreg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "" /f >nul 2>nulecho 零碎代理已敞开,请按任意键退出本窗口...pause>nul依据以后配置主动开启或敞开代理(将脚本中的 IP:PORT 换成代理服务器的地址和端口): @echo offfor /f "tokens=1,2,* " %%i in ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable ^| find /i "ProxyEnable"') do (set /A ProxyEnableValue=%%k)if %ProxyEnableValue% equ 0 ( echo 零碎代理目前处于敞开状态,正在开启代理,请稍候... echo= reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f >nul 2>nul reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "IP:PORT" /f >nul 2>nul echo 零碎代理已开启,请按任意键敞开本窗口...) else if %ProxyEnableValue% equ 1 ( echo 零碎代理目前处于开启状态,正在敞开代理,请稍候... echo= reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f >nul 2>nul reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "" /f >nul 2>nul echo 零碎代理已敞开,请按任意键退出本窗口...)pause>nul为了更加不便开启/敞开代理,能够给它设置个快捷键!首先将 bat 脚本文件发送一个快捷方式到桌面(也不便从桌面双击运行),右键【属性】-【快捷方式】-【快捷键】,给它设置一个你本人习惯的快捷键即可。如下图所示: ...

July 14, 2022 · 1 min · jiezi

关于bat:bat脚本一键配置java开发环境

背景在新电脑配置或者新人入职时须要对java开发相干环境进行配置装置,但时常会因为装置配置不到位或者操作谬误导致工夫的节约,所以在空余工夫收集了一系列软件的免装置版本,并且编写了相干配置脚本,让环境装置变得标准化。 概览安装包目录如下如所示 BaseEnv蕴含jdk(1.8),maven(3.2.5) ProgramEnv蕴含idea(2019.2) SoftEnv蕴含mysql(5.7),navicat(15),redis,redismanage(1.5.8) remark为装置总阐明 setting.bat脚本配置环境变量 mysql.bat脚本装置mysql服务 redis.bat脚本装置redis服务 icon脚本在桌面创立软件快捷方式 上述软件能够根本满足日常java开发的环境要求 安装包分享地址:https://yunpan.360.cn/surl_yk... (提取码:8079) 环境变量脚本环境变量脚本能够通过wmic ENVIRONMENT语句进行删除从新从新创立,Path变量的变更能够通过get VariableValue|findstr /i语句进行判断是否存在,bat脚本能够获取以后门路动静的去进行配置,免去了手动 输出的繁琐步骤,脚本如下 @echo offcolor 02:step1cd /d %~dp0set currentPath=%PATH%set currentDir=%cd%set javaPath=%currentDir%\BaseEnv\jdkset mavenPath=%currentDir%\BaseEnv\mavenset mysqlPath=%currentDir%\SoftEnv\mysqlset redisPath=%currentDir%\SoftEnv\redis:step2wmic ENVIRONMENT where "name='JAVA_HOME'" deletewmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%javaPath%"wmic ENVIRONMENT where "name='MAVEN_HOME'" deletewmic ENVIRONMENT create name="MAVEN_HOME",username="<system>",VariableValue="%mavenPath%"wmic ENVIRONMENT where "name='CLASSPATH'" deletewmic ENVIRONMENT create name="CLASSPATH",username="<system>",VariableValue=".;%%JAVA_HOME%%\lib\toos.jar;%%JAVA_HOME%%\lib\dt.jar"wmic ENVIRONMENT where "name='MYSQL_HOME'" deletewmic ENVIRONMENT create name="MYSQL_HOME",username="<system>",VariableValue="%mysqlPath%"wmic ENVIRONMENT where "name='REDIS_HOME'" deletewmic ENVIRONMENT create name="REDIS_HOME",username="<system>",VariableValue="%redisPath%"echo.goto step3:step3wmic ENVIRONMENT where "name='Path'" get VariableValue|findstr /i /c:"%%JAVA_HOME%%\bin">nul&&(goto step5) echo PATH环境变量中未增加: %%JAVA_HOME%%\bin wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="%currentPATH%;%%JAVA_HOME%%\bin"set currentPATH=%currentPATH%;%%JAVA_HOME%%\binecho.:step5echo JAVA_HOME PATH中已增加wmic ENVIRONMENT where "name='Path'" get VariableValue|findstr /i /c:"%%MAVEN_HOME%%\bin">nul&&(goto step6) echo PATH环境变量中未增加: %%MAVEN_HOME%%\bin wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="%currentPATH%;%%MAVEN_HOME%%\bin"set currentPATH=%currentPATH%;%%MAVEN_HOME%%\binecho.:step6echo MYSQL_HOME PATH中已增加wmic ENVIRONMENT where "name='Path'" get VariableValue|findstr /i /c:"%%MYSQL_HOME%%\bin">nul&&(goto step7) echo PATH环境变量中未增加: %%MYSQL_HOME%%\bin wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="%currentPATH%;%%MYSQL_HOME%%\bin"set currentPATH=%currentPATH%;%%MYSQL_HOME%%\binecho.:step7echo MYSQL PATH中已增加wmic ENVIRONMENT where "name='Path'" get VariableValue|findstr /i /c:"%%REDIS_HOME%%">nul&&(goto step8) echo PATH环境变量中未增加: %%REDIS_HOME%%wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="%currentPATH%;%%REDIS_HOME%%"echo.:step8echo REDIS PATH中已增加pause服务装置脚本redis通过--service-install语句进行windows服务的装置 ...

December 19, 2021 · 2 min · jiezi

关于bat:Windows自动使用管理员权限运行bat批处理手动选择启停服务

@echo off&(cd/d "%~dp0")&(fltmc>nul)||(start "" mshta vbscript:CreateObject^("Shell.Application"^).ShellExecute^("%~snx0"," %*","","runas",1^)^(window.close^)&exit /b):: echo 以后以管理员权限运行:loopecho 启停AWVS服务echo 1.启动AWVS服务echo 2.进行AWVS服务echo 3.退出echo.set /p a=输出序号:if %a%==1 goto 启动if %a%==2 goto 进行if %a%==3 exit:启动net start acunetixgoto loop:进行net stop acunetixgoto loop

November 24, 2021 · 1 min · jiezi

关于bat:BAT脚本03-组合命令-管道命令

组合命令组合命令 & 、&& 和 || 是一类用于两个或多个命令语句之间起连接作用的符号。这对于咱们想一次性执行两条或多条命令,以及后面命令执行后果的胜利与否作为前面命令是否被执行的衡量标准,起着决定性的作用。 &通过紧随的例子,echo Checking what executable files we have in WINDOWS... & dir C:\WINDOWS*.exe & echo And we got lots of stuff here. 咱们不难理解 & 在多个命令之间所起的连贯作用。事实上,咱们齐全能够将这三者分成3行来独立执行,因为它们之间是互相独立的关系。不管三者中每一条命令的后果如何,前面的一条命令总能被失去执行(这是与下文 && 和 || 的不同之处)。 &&&& 作为组合命令之一,与 & 相似,也有着并列多条命令并将其按程序执行的性能。与 & 的不同之处,兴许此时您曾经猜到了,没错,如果多命令中的某一条命令执行出错时,前面的所有命令将不会再被执行;如果始终没有出错则会始终执行完所有的并列命令。为了很好的比照它们之间的区别,咱们别离尝试一下上面的两个例子。 echo Checking if we have the following directory... & dir "E:\starcraft II" & echo Seems it does not exist. echo Checking if we have the following directory... && dir "E:\starcraft II" && echo Seems it does not exist. 它们的区别是高深莫测的,前者会有 Seems its not exist. 的输入,而后者却没有。 ...

October 29, 2021 · 2 min · jiezi

关于bat:BAT脚本02-条件-循环

条件语句仅if状况if "%choice%"=="R" color c字符相干判断if "%TIME:~0,2%" lss "12" ( echo 当初是上午 ) else ( echo 当初是下午 ) 数值相干判断set /a num=5 if %num% equ 5 ( echo 变量 num 等于 5 ) if not %num% equ 4 ( echo 变量 num 不等于 4 ) 以下数值/字符均可应用:== - 等于EQU - 等于NEQ - 不等于LSS - ⼩于LEQ - ⼩于或等于GTR - ⼤于GEQ - ⼤于或等于 否定NOTif not %num% == 4 ( echo 变量 num 不等于 4 ) 存在existif exist "D:\test my folder\a.txt" ( del "D:\test my folder\a.txt" ) else ( echo 您所要删除的文件不存在 ) 变量定义defined对于 if defined 来说,与 if exist 相似,只不过 if defined 的判断对象不是文件,而是变量,它用于判断环境变量是否被定义。 ...

October 29, 2021 · 2 min · jiezi

关于bat:批处理脚本实现文件自动清理

依照文件的最新批改日期工夫进行删除@REM @Author: chasi@REM @Date: 2020-11-09 14:49:16@REM @Last Modified by: chasi@REM Modified time: 2020-11-10 09:14:16@echo offtitle 清理Tomcat日志文件set log_dir="D:\apache-tomcat-8.5.27\logs"set bak_dat=10forfiles /p %log_dir% /S /M *.log /D -%bak_dat% /C "cmd /c echo 正在删除@relpath 文件… & echo. & del @file"forfiles /p %log_dir% /S /M *.txt /D -%bak_dat% /C "cmd /c echo 正在删除@relpath 文件… & echo. & del @file"依照文件中蕴含的日期格局间隔以后工夫的距离天数进行删除@REM @Author: chasi@REM @Date: 2020-11-09 15:39:53@REM @Last Modified by: chasi@REM Modified time: 2020-11-25 16:56:35@echo offrem 应用绝对路径,Tomcat目录下寄存日志的具体门路(以理论装置门路为准)set SrcDir="D:\apache-tomcat-8.5.27\logs"rem 指定日志保留天数set DaysAgo=10::计算距离天数>"%temp%/DstDate.vbs" echo LastDate=date()-%DaysAgo%>>"%temp%/DstDate.vbs" echo FmtDate=right(year(LastDate),4) ^& right("0" ^& month(LastDate),2) ^& right("0" ^& day(LastDate),2)>>"%temp%/DstDate.vbs" echo wscript.echo FmtDatefor /f %%a in ('cscript /nologo "%temp%/DstDate.vbs"') do ( set "DstDate=%%a")::设置日期格局set DstDate=%DstDate:~0,4%-%DstDate:~4,2%-%DstDate:~6,2%::开启变量提早setlocal enabledelayedexpansionset indexofstr=0::查找含有指定日期格局字符串的文件for /r "%SrcDir%" %%a in (*.*) do ( set "FileDate=%%~na" ::echo indexofstr:!indexofstr! call:IndexOfStrFunc "%%~na",indexofstr ::echo indexofstr:!indexofstr! set indexofstr=!indexofstr! ::echo %indexofstr% call set FileDate=%%FileDate:~!indexofstr!,10%% if "!FileDate!" leq "%DstDate%" ( if exist "%%a" ( ::echo del /f /q "%%a" del /f /q "%%a" ) ))::敞开变量提早endlocal::echo 输入结束,按任意键退出&&pause>nul&&exit:IndexOfStrFunc::IndexOfStrFunc函数:查找字符串内第一个字符为2-3的索引地位set str1=%~1set str=%str1%set num=0:nextset ch1=2if not "%str%"=="" (set /a num+=1::循环局部:loopif not "%ch1%" == "3" ( if "!str:~0,1!"=="%ch1%" goto last set /a ch1=ch1+1 goto loop)set "str=%str:~1%"goto next)set /a num=0:last::echo 字符'%ch1%'在字符串"%str1%"中的首次呈现地位为%num%set next=1set /a indexofstr=%num%-%next%goto:eofPS:windows端增加定时工作脚本,运行cmd,输出compmgmt.msc后依照定时工作的增加步骤要求进行填写。

August 6, 2021 · 1 min · jiezi

关于bat:用bat命令修改注册表为随机值实现某软件无限试用

起因试用某软件时发现,间接批改注册注册表就变成了新用户,一次次手动改太麻烦,所以学一学批处理。 指标性能一键批改注册表一键重启EXE批改内容为指定长度指定范畴内随机字符串源码:: 敞开回显@echo off :: 开启变量提早,这里是为了在变量中援用变量即!%str%!setlocal enabledelayedexpansion::配置指标字符串长度及取值范畴set len=76set allstr=ABCDEF0123456789:: 取字库长度(本人数了填上面也能够,这里纯正是为了涨姿态)set num=0set str=%allstr%:labelset /a num+=1set str=%str:~0,-1%if defined str goto :labelecho 字符串长度:%num%:: 循环len次调用generate办法,每次返回一个随机字符for /l %%a in (1,1,%len%) do @call :generate "%%a":: 生成指标字符串后输入echo %random_str%:: 批改注册表,省略/t REG_SZ,因为默认就是字符串(REG_SZ)reg add HKEY_CURRENT_USER\SOFTWARE\ant /v Id /d %random_str% /f:: 重启EXEtaskkill /f /t /im ant.exestart D:\ant_1.3.4\ant_1.3.4\ant.exe:: 运行完结,不让窗口敞开pause::取随机字符串并拼接办法:generateif "%~1"=="" goto:eofset /a r=%random%%%%num%set random_str=%random_str%!allstr:~%r%,1!

May 21, 2021 · 1 min · jiezi