• Windows批处理:请求远程协助


      公司办公场地分别在两个不同的楼层,处理问题要来回跑,所以思考使用远程访问的方式解决问题。同事大多对电脑不熟悉,使用「通讯软件」和「电话」教同事开启远程桌面沟通成本挺高,另外公司IP地址、账号密码都没统一管理,使用远程桌面的前提:①开启远程 ②获取IP地址 ③获取用户名密码。经过一番思考,发现使用批处理解决这些问题并不复杂。

      当同事遇到问题时:我通过「通讯软件」将脚本发送给同事 > 同事执行 > 我使用远程桌面操作。

      脚本先开启远程桌面服务、关闭防火墙,接下来获取当前用户名、让用户输入密码、获取IP,这些信息保存到临时文件;再将临时文件复制到我电脑上的共享文件夹(everyone要有读写权限),我查看用户信息文件“用户名.txt”后,即可进行远程。

    @echo off
    color 1F
    title 请求远程协助脚本
    set name=%username%
    set filename=%name%.txt
    
    :home
    cls
    echo.
    echo 请右击「以管理员身份运行」
    echo.
    echo.
    echo         1、开启远程协助
    echo.
    echo         2、关闭远程协助
    echo.
    echo         0、退出
    echo.
    echo.
    
    set /p num=请输入:
    if %num%==1 goto 1
    if %num%==2 goto 2
    if %num%==0 goto 0
    
    :1
    cls
    echo.
    echo ================================================
    echo.
    net start SessionEnv
    net start TermService
    ::开启远程桌面
    netsh firewall set opmode mode = disable>%temp%
    esult.tmp
    if %errorlevel%==0 (echo 已关闭防火墙。) else (echo 关闭防火墙失败。)
    echo.
    ::关闭防火墙
    REG ADD "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
    ::配置注册表,开启选项
    echo.
    echo ================================================
    echo.
    echo.
    set /p pass=请输入电脑密码:
    echo 账号:%username% >%temp%\%filename%
    echo 密码:%pass% >>%temp%\%filename%
    ipconfig | findstr "192.168.1" >%temp%ip.tmp
    set /p a=<%temp%ip.tmp
    echo IP:%a:~-14% >>%temp%\%filename%
    ::截取IP地址
    echo. copy %temp%\%filename% \192.168.1.200Sharehelp ::复制电脑信息到共享 echo. if %errorlevel%==0 (echo 管理员已收到信息,等待处理。) else (echo 发送信息失败。) del %temp%ip.tmp && del %temp% esult.tmp ::删除临时文件 echo. pause&exit :2 cls echo. echo 开始配置... echo. sc config MpsSvc start= auto sc config SessionEnv start= demand sc config TermService start= demand ::设置开机服务 netsh firewall set opmode mode = enable>%temp% esult.tmp if %errorlevel%==0 (echo 已开启防火墙。) else (echo 开启防火墙失败。) del %temp% esult.tmp ::开启防火墙 REG ADD "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections /t REG_DWORD /d 1 /f ::配置注册表,关闭选项 echo. pause&exit :0 exit

    效果如下:

    本文出自 “运维菜鸟.log” 博客,谢绝转载!

  • 相关阅读:
    Array对象
    属性描述对象
    Object对象
    console对象与控制台
    编程风格
    错误处理机制
    13、百钱买百鸡之数学优化
    12、c程序中编程,统计一行中数字字符的个数。
    10、输入某年某月某日,判断这一天是这一年的第几天?
    9、c语言输入一个整数怎么分别输出它的每位上的数字
  • 原文地址:https://www.cnblogs.com/sjy000/p/4649447.html
Copyright © 2020-2023  润新知