实战脚本写入注册表,完善WindowsServer自动化运维

本文的目的很简单,半自动化,半自动化哟。

就拿我们最经常干的一件事情开刀:修改远程桌面的端口号。

正常流程是这样的:

1、打开注册表编辑器

2、巴拉巴拉点击鼠标到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro1Set\Control\Terminal Server\WinStations\RDP-Tcp]这个长的不行的键值上

3、将右侧名为PortNumber的键值的值(默认是3389)修改成自己需要的端口。

上面的方法我们可以算算需要点击鼠标多少次,好吧,其实虽然过程很简单,但是确实很麻烦是吧?

今天的目的是做一个脚本,只要运行之后,根据提示输入需要更改的端口,就算ok,高科技外带牛X的节奏。怎么做的很简单,完全看代码吧,不会看的也可以直接用。

以下保存为cmd或者bat文件,切记要以管理员身份运行。

@echo off  修改远程端口号,写入注册表
::::::::::::::::::::::::::::
:必须要管理员权限
:首先写入一个注册表文件
:提醒用户输入需要更改的端口号
:由于这里需要十六进制数据,但是用户不会记录这个,所以要有一个转换过程
:转换完毕后继续写入注册表,然后运行该注册表,最后删除
echo Windows Registry Editor Version 5.00 >t1.reg
echo.
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp] >>t1.reg
:::::::::::::::::::::::::::::::::::::十进制转换十六进制
setlocal enabledelayedexpansion
set hexstr=0 1 2 3 4 5 6 7 8 9 A B C D E F
set d=0
for %%i in (%hexstr%) do (set d!d!=%%i&set/a d+=1)
set/p scanf=请输入需要改变的RDP端口号,不可超过65535:
if not defined scanf exit/b
set dec=%scanf%
call :d2h
if not defined hex set hex=0
::echo %dec% 的十六进制为:0x%hex%
echo "PortNumber"=dword:0%hex% >>t1.reg
regedit /s t1.reg
del /q t1.reg
:d2h
if %scanf% equ 0 exit/b
set/a tscanf=%scanf%"&"15
set/a scanf">>="4
set hex=!d%tscanf%!!hex!
goto :d2h


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值