#! ruby -Ks def main(params) if params[0].nil? help elsif params[0] == "DHCP" message("dhcp", "dhcp", "dhcp") command("address", "dhcp") command("dns", "dhcp") else if params[1].nil? message(params[0], "none", "none") command("address", "static #{params[0]} 255.255.255.0 none") command("dns", "static none") else if params[2].nil? message(params[0], params[1], params[1]) command("address", "static #{params[0]} 255.255.255.0 #{params[1]} none") command("dns", "static #{params[1]} primary") else message(params[0], params[1], params[2]) command("address", "static #{params[0]} 255.255.255.0 #{params[1]} none") command("dns", "static #{params[2]} primary") end end end end def command(mode, source) system("netsh interface ip set #{mode} \"ローカル エリア接続\" #{source}") end def message(address, gateway, dns) print "IP Address : #{address}\n" print "Default Gateway : #{gateway}\n" print "DNS Server : #{dns}\n" end def help print < dhcp, Gateway => dhcp, DNS => dhcp} 2) ipset 192.168.0.100 {IP => 192.168.0.100, Gateway => none, DNS => none} 3) ipset 192.168.0.100 192.168.0.1 {IP => 192.168.0.100, Gateway => 192.168.0.1, DNS => 192.168.0.1} 4) ipset 192.168.0.100 192.168.0.1 192.168.0.250 {IP => 192.168.0.100, Gateway => 192.168.0.1, DNS => 192.168.0.250} EOF end ARGV.map!{|x| x.upcase } main(ARGV)