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(<>); }