The
$_ in
localtime $_ is
not optional: without it, the function returns
current local time; likewise
gmtime().
The -l (that's a small ell) command line switch may be useful: it will automatically chomp the input record separator (IRS) on input and append the ORS on output. (IRS and ORS are both a newline by default.) As mentioned, not so important on input, but on output this gives you your converted time strings each on a separate line rather than as one (very long) line.
>cat utimes
1111111
22222222
333333333
>perl -wMstrict -lne "print scalar localtime $_" < utimes > ltimes
>perl -wMstrict -lne "print scalar gmtime $_" < utimes > gmtimes
>cat ltimes
Tue Jan 13 15:38:31 1970
Mon Sep 14 23:50:22 1970
Thu Jul 24 19:35:33 1980
>cat gmtimes
Tue Jan 13 20:38:31 1970
Tue Sep 15 04:50:22 1970
Fri Jul 25 00:35:33 1980
Example without
-l command line switch:
>perl -wMstrict -ne "print scalar localtime $_" < utimes > ltimes
>cat ltimes
Tue Jan 13 15:38:31 1970Mon Sep 14 23:50:22 1970Thu Jul 24 19:35:33 19
+80