will print the contents of a file.
If the file contains non-ASCII characters, you can display those characters symbolically with
cat -v. This can be quite useful for situations where control characters would otherwise be invisible.
cat -v unicode.txt
Very often, for interactive use, you are better off using an interactive pager like
more, though. (
less is far more powerful than
more and it is advised to use
less more often than
To pass the contents of a file as input to a command. An approach usually seen as better (UUOC) is to use redirection.
tr A-Z a-z <file.txt # as an alternative to cat file.txt | tr A-Z a-z
In case the content needs to be listed backwards from its end the command
tac can be used:
If you want to print the contents with line numbers, then use
cat -n file.txt
To display the contents of a file in a completely unambiguous byte-by-byte form, a hex dump is the standard solution. This is good for very brief snippets of a file, such as when you don't know the precise encoding. The standard hex dump utility is
od -cH, though the representation is slightly cumbersome; common replacements include
$ printf 'Hëllö wörld' | xxd 0000000: 48c3 ab6c 6cc3 b620 77c3 b672 6c64 H..ll.. w..rld