目的很简单,半夜躺在床上能监控本本下片的速度,并且远程关机什么的。不需要teamviewer那种把整个屏幕都搬到手机上,网速太慢还容易误操作。之前用AHK写过一个,模拟鼠标键盘发送QQ消息从而发送接受命令,虽然很山寨,还算好用。现在又想到另一个办法,利用windows的telnet服务直接远程执行命令行。
启动PC上的telnet服务
win7默认是不安装telnet功能的,需要安装并且启动系统服务,另外还要指定用来登陆的用户名和密码。这些网上大把的,不写了,只是不想把telnet服务设置为自动开启(不安全),于是写个简单的批处理,方便开启和关闭。
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 31 32 33 34 35
| @echo off echo 测试运行权限... fsutil >nul || ( echo 请以管理员身份运行. pause >nul && exit ) echo :::::::::::::::::::::::::::::::::::: echo :: 查询TELNET服务状态输入 q :: echo :: 注意:以下命令需要管理员权限 :: echo :: 关闭TELNET服务输入 stop :: echo :: 打开TELNET服务输入 start :: echo :::::::::::::::::::::::::::::::::::: :O set /p input=请输入命令: if "%input%"=="start" goto A if "%input%"=="stop" goto B if "%input%"=="q" goto C pause exit
:A sc config TlntSvr start= demand sc start TlntSvr pause exit
:B sc stop TlntSvr sc config upnphost start= disabled pause exit
:C sc query TlntSvr goto O
|
注意,需要管理员权限运行
配置networx
对,看网速还是要用它,把下面的脚本保存为vbs文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| Set objArgs = WScript. Arguments 'Make up an instance set SpeedMeter = Wscript.CreateObject("NetWorx.SpeedMeter")
'Start the meter SpeedMeter.Start
'Wait five seconds If objArgs.count =0 Then WScript.Sleep 5000 Else WScript.Sleep objArgs(0)*1000 End If
'Stop the meter SpeedMeter.Stop
'Retrieve result Result = SpeedMeter.Text WScript.Echo "Result: " & Result
'Free memory set SpeedMeter=nothing
|
在远程端执行就能返回网速数据了。
手机上安装atelnet
试了N个android的telnet客户端,最后就这个atelnet稳定点而且中文不乱码(作者是中国人)。并且它还支持自动输入命令和预定义脚本。连接到PC有很多办法,如果是公网IP直接输入就行了,局域网的话需要手机跟电脑处在同一个ip段下。因为用的是校园网,我的方法是用win7自带的hostednetwork连接手机,毕竟我只想躺在床上,离得并不远。尝试登录。。。
好了,现在可以执行shutdown之类的简单命令了,如果你精通命令行,甚至让电脑给你发个截图过来都行。