#!/usr/bin/perl -w use strict; use POSIX; use locale; $| = 1; while(<>) { if (/^\t\t\t( [0-9a-f]{2,4})+$/) { chomp; my @hex = split; my $line = "$_ "; foreach my $i (@hex) { my @c = pack("H4", $i); foreach my $j (split(//, "@c")) { $line .= isprint($j) ? "$j" : "."; } } print "$line\n"; } else { print } }