Note that it doesn't strip ugly control characters.
#!/usr/bin/perl -w # # wdcln.pl # using NT resource kit # takes winsdmp.exe output & # dumps wins server database # prints active WINS records # to comma separated winsout.txt # # usage: wdcln.pl <wins server ip address> # system("c:/ntreskit/winsdmp.exe $ARGV[0] > winsdump.txt"); open(WF, "c:/ntreskit/winsdump.txt"); open(OF, ">c:/ntreskit/winsout.txt"); printf OF "%-20s ,%-15s , %4s ,%5s ,Version\n", "Netbios Name", "IP Ad +dress", "Type", "State"; # print header while(<WF>) { if (m/\d\d?\d?.\d\d?\d?.\d\d?\d?\.\d\d?\d?,\"(.*)",[0-9A-F]{1,2},\ +d+,(\d+),(\d+),\d+,(\d+).*,(\d\d?\d?.\d\d?\d?.\d\d?\d?\.\d\d?\d?),$/) + { # # for clarity, make $\d variables pretty # $nbname = $1; $type = $2; $state = $3; $vers = $4; $ip_addr = $5; if ($state < 1) { # # this ensures only active entries in the db # state == 1 is released, state == 2 is tombstone records # printf OF "%-20s ,%-15s ,%4d ,%5d ,%d\n", $nbname, $ip_addr, $type +, $state, $vers; } # if state } # if match } # while close(OF); close(WF);
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Dump WINS database to CSV
by Anonymous Monk on Sep 20, 2002 at 20:54 UTC | |
by Corion (Patriarch) on Mar 03, 2011 at 08:37 UTC |