opendir D, "files" or die $!;
while ($if=readdir D) {
- next unless $if =~ m/^[:a-z0-9]/;
+ next unless $if =~ m/^[_a-z0-9\\]/;
$of= $if;
- $of =~ s,\:,/,g;
+ $of =~ s,_,/,g;
$of =~ s,^/,,;
- $of =~ s,\\\;,:,g;
- $of =~ s:\\([0-9a-f][0-9a-f]): sprintf '%c', hex $1 :ge;
+ $of =~ s,//,_,g;
+ $of =~ s/\\([0-9a-f][0-9a-f]|_|\\)/
+ length $1 eq 1 ? $1 : sprintf '%c', hex $1
+ /ge;
$newf= 'new/'.$if;
mkparents($of);