if (defined $ARGV[0] and -f $ARGV[0]) { if (open(my $fh, $ARGV[0])) { binmode $fh; my $buffer; my $len = 0; while ($_ = read($fh, $buffer, 1024, $len)) { $len += $_ } hexdump($buffer); } } else { hexdump(<>); }