perl -e 'print scalar(()=<>),"\n"' filename #### perl -pe "}{$_=$." filename #### #!/your/perl/here -p }{$_=$. #### #!/your/perl/here use strict; use warnings; while (<>) {} print "$.\n"; #### #!/your/perl/here use strict; use warnings; my $file_count = @ARGV; while (<>) {} continue { if (eof) { # print file names for multiple files print "$ARGV: " if ($file_count > 1); print "$.\n"; close ARGV; } }