blob: 53680870662ec4f312da8fb8596d211c338f1e84 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
open F, "isdndb.txt" or die "file $file not found";
open G, ">tutu" or die "file $file not found";
foreach (<F>) {
s/\#.*//;
# s/\[City\]\s+National//;
/\[Country\]\s*(.*)/ and $country = $1;
/\[City\]\s*(.*)/ and $city = $1;
/\[Name\]\s*(.*)/ and $name = $1;
/\[Prefix\]\s*(.*)/ and $prefix = $1;
/\[ISDN\]\s*(.*)/ and $isdn = $1;
/\[Encaps\]\s*.*/ and do { defined $dns1 and $dns2=""; };
/\[Domain\]\s*(.*)/ and $domain = $1;
/\[DNS\]\s*(.*)/ and ($dns1 ? $dns2 : $dns1) = $1;
/\[End\]\s*(.*)/ and do { undef $name; undef $prefix; undef $isdn; undef $domain; undef $dns1; undef $dns2; };
if ($isdn && !$prefix) { $prefix = "" }
if (defined $name && defined $isdn && defined $domain && defined $dns1 && defined $dns2) {
print G join("|", $country, $city, join("=>", $name, $prefix . $isdn, $domain, $dns1, $dns2)), "\n";
undef $name;
undef $prefix;
undef $isdn;
undef $domain;
undef $dns1;
undef $dns2;
}
}
|