本文的目的很简单,半自动化,半自动化哟。
就拿我们最经常干的一件事情开刀:修改远程桌面的端口号。
正常流程是这样的:
1、打开注册表编辑器
2、巴拉巴拉点击鼠标到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro1Set\Control\Terminal Server\WinStations\RDP-Tcp]这个长的不行的键值上
3、将右侧名为PortNumber的键值的值(默认是3389)修改成自己需要的端口。
上面的方法我们可以算算需要点击鼠标多少次,好吧,其实虽然过程很简单,但是确实很麻烦是吧?
今天的目的是做一个脚本,只要运行之后,根据提示输入需要更改的端口,就算ok,高科技外带牛X的节奏。怎么做的很简单,完全看代码吧,不会看的也可以直接用。
以下保存为cmd或者bat文件,切记要以管理员身份运行。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
@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
|
本文转自 九叔 51CTO博客,原文链接:http://blog.51cto.com/jiushu/1332093,如需转载请自行联系原作者