There are mainly six ways of creating files in Linux. All of them have their own purpose and benefits. They are as follows:
1. Creating file using the `cat` command in Linux
It is the most universal command/tool for creating files on Linux systems. We cannot edit a file using the cat command. Major operations that can be done using it are as follows:
To create files and write the data into them.
cat >file1
This command creates a new file file1 (in write mode) if it doesn’t exist in the present working directory. If any file with file name file1 exists in the current directory, it is overwritten.
Note: After writing the text into the file, press ctrl+d to save and exit from the writing mode.
.webp)
touch` command in LinuxWe can create an empty file (or multiple empty files) using this command. But its main purpose is to change or update the time-stamp of a file. Major operations that can be done using it are as follows:
Creating a file using touch in Linux
touch file2
.webp)
touch file2
Used `ls` command to list files in the current directory and used `cat` command to see the content inside a file.
Creating multiple files at same time using `touch` command in Linux
touch file_1 file_2 file_3 file_4
.webp)
touch file_1 file_2 file_3 file_4
How to display timestamp of files in Linux
ls -l
.webp)
ls -l
How to change timestamp of a file in Linux
For example: If we want to change the timestamp of a file_name `file_1`. We use command as follows.
touch file_1
.webp)
touch file_1
Using `ls -l` command to display timestamp of files.
3.Creating File using `vi` or `vim` command in Linux
Its main function is to edit files. It is commonly used by programmers to edit the textual content of any file on vi text editor. Major operations that can be done using it are as follows:
Note: To save and exit from the vi-text editor, press the Escape key and then type :wq and hit enter.
Creating a file using vi in Linux
vi file_1
This command creates a new file file_1 and opens it on the vi-text editor if it doesn’t exist in the present working directory. If a file with the file name file_1 exists in the current directory, then this command just opens the file on the vi-text editor.
.webp)
vi file_1
Used `ls` command to list files in the current directory and used `cat` command to see the content inside a file.
Creating a file using vim in Linux
This command creates a new file file_1 and opens it on the vim-text editor if it doesn’t exist in the present working directory. If a file with the file name file_1 exists in the current directory, then this command just opens the file on the vm-text editor. Vim is the update version of vi text editor.
vim file_2
.webp)
vim file_2
Used `ls` command to list files in the current directory and used `cat` command to see the content inside a file.
4.Creating file using `nano` command in Linux
It may/may not be found in all distributions of LINUX. We can create as well as edit files.
Note: To exit nano Text Editor press ctrl + x.
nano file_1
.webp)
nano file_1
Used `ls` command to list files in the current directory and used `cat` command to see the content inside a file.
5.Creating a file using `gedit` command in Linux
Linux’s users normally use the command line interface (CLI) for writing or editing the text files. But if we want to edit a text file graphically on Linux machines without learning about the powerful editors like vim and nano then gedit text editor makes it easier for us.
“gedit” stands for GNOME text editor, it’s a standard default text editor found in any system with a GNOME desktop environment including Ubuntu, Fedora, Debian, CentOS, and Red Hat. Using gedit we can create as well as write/edit the text files.
Create a file.
gedit file_2

1.

2.
This command creates a new file file_2 (in write mode) on the gedit text editor if it doesn’t exist in the present working directory. If any file with file name file_2 exists in the current directory, then it is opened (in edit mode) on the gedit text editor.
Note: To use the terminal again, press ctrl + c.
Open and edit the file.
As we create or edit a file using gedit command, by default the file gets open on the gedit text editor and wait for it to close before it returns you to the terminal prompt. If you want to use the terminal window while the gedit text editor is open, launch gedit with the following command instead.
gedit file_2 &
This command opens gedit text editor as a background task. We get the command line prompt back straight away and carry on using the terminal window even when gedit text editor is running.
.webp)
Open and edit the file
We normally use mv command to move the files or directories from one place to another in Linux systems. But we can also use it to create new files with the contents of some other file on the system.
mv file_2 file_3
This command creates a new file file_3 with the contents of file_2 if file_3 doesn’t exist in the present working directory. If any file with file name file_3 exists in the current directory, then it is overwritten with the contents of file_2.
Note: This command copies the content of file_2 to file_3 and deletes file_2.
7. Creating file using `printf` command in Linux
The printf command can be used to create a file with formatted text. To create a file using the printf command
Open the terminal and type the following command:
printf "txt_we_want"> File_name
Example:
If we want to write “hello connections” and want to create a file_name “file_1”
printf "hello connections"> file_1
ls` command to list files in the current directory and used `cat` command to see the content inside a file.Frequently asked questions
What is the difference between creating and editing a file in Linux?
Creating is making a file from scratch (file which is not there in our system), while editing a file means that a file already exists in our system and we are making changes to it.
How do I create a file in Linux using the command line?
There are several ways to create a file in Linux using the command line, such as using the cat, touch, vi, vim, nano, or gedit command.
How do I edit a file in Linux using the command line?
There are few editors in Linux like vi, vim, nano, or gedit command which can help us to edit files.
Conclusion
In this article we have discussed many ways to create a file in Linux like cat, touch, vi/vim, nano, gedit, mv and printf commands. One can easily learn different ways to create a file by referring to this article. Each command here has its own purpose and benefits. Users can choose to use any of the methods according to their needs.