首页
python
Win桌面应用自动化pywinauto
pywinauto遍历展示程序的所有菜单项
Python3使用串口
Python字符串处理
Python3实现配置文件差异对比(键值对key=value的形式)
正则
正则匹配两个字符之间的字符串
正则提取markdown中图片链接
正则表达式基本知识
字符串-正则实例
Python生成8位随机字符串的一些方法
python3批量ping检测
python3检测一批主机ip的tcp端口
Python3--DNS
3D人体骨架检测(mediapipe)
Python-网络
检测到win电脑断网就发出告警声音
Python编写的DNS服务可靠性测试程序
Python编写的TCP/UDP端口探测程序
Python抓包-Pyshark
并发扫描TCP、UDP端口
Python-DHCP
端口的问题以及绑定端口(Python)
VSCode编辑器
python远程开机工具
Pyhton3--Win注册表
开源IT运维项目
python知识点
Python开源运维项目集合
python3备份交换机配置
Python3使用snmp获取H3C交换机arp表
Python检测tcp端口状态并发送到企微群
Python3使用smtp发邮件
Python3使用smtp发邮件(带附件)
Python3拉取微软AD域所有用户信息
Python3使用微软AD域账号认证
自动更新公网域名的解析(阿里云)
每日定时推送Excel中排班表信息到企微群
Django
Django模板标签
Django在发送POST请求时返回403错误
Django-mysql数据库条件查询
uwsgi 配置 python virtualenv 虚拟环境目录 ( ini 配置)
常用收藏
python3数据类型转换
python处理文本
txt每行一个字符串_用英文逗号连接
txt_匹配并拆分出需要字符串
python获取日期时间
python执行linux命令的三种方式
python使用ssh连接到linux服务器执行命令
本文档由 内网文摘 发布,转载请注明出处
-
+
首页
python远程开机工具
一款小巧的网络远程开机工具 https://gitee.com/vic.liu/wake_on_lan 介绍 同一局域网内的机器,只需指定目标主机的MAC地址,就令远程主机开机。 非同一局域网的情况下,除需指定目标主机的MAC地址,还需指定目标主机的地址。 端口默认为7,你也可以随意指定。 示例 同一局域网内的使用示例:./wake_on_lan.py -m 12-34-56-78-90-AB 非同一局域网的使用示例:./wake_on_lan.py -m 12-34-56-78-90-AB -a 8.8.8.8 备注 如果你不能使用该脚本远程开机,可能是主板禁用了网络远程开机,需要改下BIOS设置,具体设置方法Google一下就有了。 wake_on_lan.py ```python #!/usr/bin/env python #coding=utf-8 # Created Time: 2015-01-23 16:23:02 # Modified Time: 2015-01-24 09:24:04 # Created By: Vic <vic@libgod.com> from optparse import OptionParser import socket import struct def wake(addr, mac): mac_data = [] for i in range(0, 12, 2): mac_data.append(int(mac[i:i+2], 16)) packet = struct.pack("!BBBBBB", 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF); packet_mac = struct.pack("!BBBBBB", *mac_data) for i in range(0, 16): packet += packet_mac #print "len: ", len(packet), "data: ", packet s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) try: s.sendto(packet, addr) print "唤醒数据包发送完成", addr, mac finally: s.close() def main(): usage = "%prog [options]" parser = OptionParser(usage = usage) parser.add_option("-a", "--addr", dest="addr", help="Boardcast address", metavar="255.255.255.255") parser.add_option("-p", "--port", dest="port", help="Port", metavar="7") parser.add_option("-m", "--mac", dest="mac", help="MAC address", metavar="FF-FF-FF-FF-FF-FF") (options, args) = parser.parse_args() if not options.mac: parser.print_help() return addr = "255.255.255.255" port = 7 mac = options.mac.replace("-", "") if options.addr: addr = options.addr if len(mac) != 12: print "无效的MAC地址: %s" % options.mac return if options.port: port = int(options.port) wake((addr, port), mac) if __name__ == "__main__": main() ```
local
2022年7月6日 20:58
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 LocalNetwork
LocalNetwork
是由mrdoc开源
LocalNetwork.cn
修改的在线文档系统,作为个人和小型团队的云笔记、文档和知识库管理工具。
如果此文档给你或你的团队带来了帮助,欢迎支持作者持续投入精力更新和维护!内网文摘 & LocalNetwork
>>>主页
logo
logo
下载Markdown文件
分享
链接
类型
密码
更新密码