Skip to content

Instantly share code, notes, and snippets.

@dgv
dgv / sample_wol.rb
Created June 4, 2012 02:05
Ruby Wake-On-Lan Script
#!/usr/bin/ruby
require 'socket'
begin
addr = ['<broadcast>', 9]
UDPSock = UDPSocket.new
UDPSock.setsockopt(Socket::SOL_SOCKET, Socket::SO_BROADCAST, true)
data = "\xFF\xFF\xFF\xFF\xFF\xFF"
arr = ARGV[0].split(':')
16.times do |i|
data<< arr[0].hex.chr+arr[1].hex.chr+arr[2].hex.chr+arr[3].hex.chr+arr[4].hex.chr+arr[5].hex.chr