本文的目的很簡單,半自動化,半自動化喲。編輯器
就拿咱們最常常乾的一件事情開刀:修改遠程桌面的端口號。ide
正常流程是這樣的:spa
一、打開註冊表編輯器code
二、巴拉巴拉點擊鼠標到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro1Set\Control\Terminal Server\WinStations\RDP-Tcp]這個長的不行的鍵值上xml
三、將右側名爲PortNumber的鍵值的值(默認是3389)修改爲本身須要的端口。ci
上面的方法咱們能夠算算須要點擊鼠標多少次,好吧,其實雖然過程很簡單,可是確實很麻煩是吧?cmd
今天的目的是作一個腳本,只要運行以後,根據提示輸入須要更改的端口,就算ok,高科技外帶牛X的節奏。怎麼作的很簡單,徹底看代碼吧,不會看的也能夠直接用。string
如下保存爲cmd或者bat文件,切記要以管理員身份運行。it
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
|