I recently came up with a couple of pipeable perl one-liners.
perl -pechop is a shortened form of
perl -p -e chop. Here are the parts of it, explained:
perl– the perl executable, here for completeness. to learn about the options, type
man perlruninto your terminal.
-p– perl assumes a loop around the program where it reads each line from the standard input and prints the output. since it’s a single character option that doesn’t take a parameter, it can be grouped with other options.
-e– evaluates (runs) the string that’s passed to it. the way perl’s option parser works, when an option takes data, it uses the rest of the command line parameter. so it can be shortened from
perl -p -e chopto
perl -pechop. This makes it short enough that typing it in often shouldn’t be a problem.
chop– the perl subroutine
choptakes the current input and chops the last character off it. It’s handy for chopping the newline. For example
pwd | perl -pechopwill print the current directory to standard output. It can then be piped to the command to save the current directory to the clipboard (
pbcopyon mac os x.
Another perl subroutine,
chomp, removes the last character of a line but only if it’s the newline character. It’s useful when you don’t know if there’s a newline. The corresponding perl one-liner is