The cat -v
option (Section 12.4)
shows an ASCII representation of unprintable and
non-ASCII characters. cat has two options for displaying whitespace in a line. If you
use the -t
option with -v
, TAB characters are
shown as ^I
. The -e
option
combined with -v
marks the end of each line with a $
character. Some versions of cat don't require the -v
with
those options. Let's compare a one-line file without and with the -t
-e (which may have to be typed separately, by the way;
-te won't work on some versions):
%cat afile
This is a one-line file - boring, eh? %cat -v -t -e afile
ThiS^Hs is^Ia one-line file^I- boring, eh? $
Although you can't tell it from plain cat,
there's a backspace (CTRL-h) before the first s
, two TABs that take up only one column of whitespace each, and
seven spaces at the end of the line. Knowing this can help you debug problems in
printing and displaying files. It's also a help for shell programmers who need
to parse or sort the output of other programs.
— JP