#!/usr/bin/perl use warnings; use strict; print <) { chomp $choice; last if $choice eq 'q'; if ($choice !~ /^[ab]$/) { print "a, b or q expected: "; next; } my $wwn = lc <>; if ($choice eq 'b') { $wwn =~ s/://g; print "$wwn\n"; next; } if (-1 < index $wwn, ':') { print "WWN already contains :\n"; next; } if (16 != length $wwn) { print "WWN must be 16 characters\n"; next; } if ($wwn =~ /^[a-f0-9]/) { print "Non-hex characters are not allowed in WWN\n"; next } print join (':', unpack ("(a2)*", $wwn)), "\n"; }