The cat
command short for concatenate, It is a fast and versatile tool for viewing and merging file contents directly from the Linux terminal. Whether you’re inspecting logs or quickly joining multiple text files, cat
delivers what you need with efficient simplicity.
How cat Works
You use cat
to display the contents of files. Simply run:
cat filename.txt
You’ll instantly see everything written in the file printed to your screen. If you want to review the contents of several files at once, list them in sequence:
cat filename1.txt filename2.txt filename3.txt
The result is that cat
outputs all three files’ data in order.
Basic Syntax
cat [OPTION] [FILE]
- [OPTION]: Command-line options to modify output
- [FILE]: The target file(s) for processing
Common cat Command Uses
1. View a Single File
Display file content directly:
cat report.txt
2. View Multiple Files
Show the contents of files in succession:
cat intro.txt summary.txt
3. Show File with Line Numbers
Make each line identifiable for reviews or troubleshooting:
cat -n server.log
4. Create a New File
Quickly create and populate a file by typing text followed by Ctrl+D
to save:
cat > notes.txt
5. Copy or Merge Files
Merge multiple files into a new one:
cat part1.txt part2.txt > merged.txt
6. Squeeze Blank Lines
Suppress repeated empty lines in output:
cat -s messy.txt
7. Append to an Existing File
Add content to the end of a file:
cat changelog.txt >> history.txt
8. Highlight End of Lines
Show the $
at the end of every line for clarity:
cat -E notes.txt
9. All Text Files at Once
Display all text files in a folder:
cat *.txt
Useful cat Command Options
Option | Usage |
---|---|
-A | Show all characters, including non-printing |
-b | Number only non-empty lines |
-E | Display $ at end of every line |
-n | Number all lines |
-s | Squeeze multiple adjacent blank lines |
-T | Show tabs as ^I |
-v | Make non-printing characters visible |
-u | Unbuffered output (rarely needed) |
Conclusion
From viewing a small config file to merging hundreds of logs for analysis, cat
is a fundamental Linux skill that increases productivity at the terminal. Its versatility means every user, whether new or advanced benefits from mastering it.
Read More: History of Linux