Quick Links

If you're a keyboard person, you can accomplish a lot of things just using the Linux command line. For example, there are a few easy-to-use methods for creating text files, should you need to do so.

Create a Text File Using the Cat Command

Our first method for creating text files uses the cat command. It's useful if you want to immediately add some text to your new file.

Just type the following command at the terminal prompt (replacing "sample.txt" with whatever you want to name your file), and then press Enter:

cat > sample.txt

After pressing Enter, you are not returned to the terminal prompt. Instead, the cursor is placed on the next line, and you can start entering text directly into your file. Type your lines of text, pressing Enter after each line. When you are done, press Ctrl+D to exit the file and return to the prompt.

To verify your file was created, you can use the ls command to show a directory listing for the file:

ls -l sample.txt

You can also use the cat command to view the contents of your file. Just type the following command at the prompt, and then press Enter:

cat sample.txt

Create a Text File Using the Touch Command

You can also create a text file using the touch command. One difference between using this command and the cat command we covered in the last section is that, while the cat command lets you enter text into your file immediately, using the touch command does not. Another big difference is that the touch command lets you create multiple new files with a single command.

The touch command is handy for quickly creating files you intend to use later.

To create a new file, type the following command at the terminal prompt (replacing "sample.txt" with whatever file name you want to use), and then press Enter:

touch sample.txt

Notice that you are given no indication that the file was created; you're just returned to the prompt. You can use the ls command to verify the existence of your new file:

ls -l sample.txt

You can also create multiple new files at once with the touch command. Just add as many extra file names (separated by spaces) as you want to the end of the command:

touch sample1.txt sample2.txt sample3.txt

Again, you're shown no indication that the file was created, but issuing a simple ls command shows that the files are indeed there:

And when you're ready to add text to your new files, you can just use a text editor like Vi.

Create a Text File Using the Standard Redirect Symbol (>)

You can also create a text file using the standard redirect symbol, which is usually used to redirect the output of a command to a new file. If you use it without a preceding command, the redirect symbol just creates a new file. Like the touch command, creating a file this way does not let you enter text into the file right away. Unlike the touch command, though, creating a file using the redirect symbol only lets you create one file at a time. We're including it for completeness, and also because if you're just creating a single file, it does offer the least typing.

To create a new file, type the following command at the terminal prompt (replacing "sample.txt" with whatever file name you want to use), and then press Enter:

> sample.txt

You are given no indication that the file was created, but you can use the ls command to verify the existence of your new file:

ls -l sample.txt


These three methods should allow you to quickly create text files at the Linux terminal, whether you need to enter text into them immediately or not.

Linux Commands

Files

tar · pv · cat · tac · chmod · grep ·  diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · join · jq · fold · uniq · journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · convert · rclone · shred · srm · scp · gzip · chattr · cut · find · umask · wc · tr

Processes

alias · screen · top · nice · renice · progress · strace · systemd · tmux · chsh · history · at · batch · free · which · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · yes · kill · sleep · sudo · su · time · groupadd · usermod · groups · lshw · shutdown · reboot · halt · poweroff · passwd · lscpu · crontab · date · bg · fg · pidof · nohup · pmap

Networking

netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw · arping · firewalld

RELATED: Best Linux Laptops for Developers and Enthusiasts