Open In App

How to Create File in Linux

Last Updated : 15 Dec, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

Today, we’re going to learn about something really important – how to create files in Linux. It’s like creating a fresh piece of digital paper to write or store things. We’ll explore different ways to do this using simple commands. Whether you’re just starting out or have been using Linux for a bit, understanding how to create files will make your computer adventures a lot easier. So, let’s jump in and discover how to make new files in Linux together!

There are mainly seven 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.

cat >file1
cat >file1

To view the contents of a file using cat command

cat file1



This command simply prints the contents of file1 on the terminal screen.

cat >file1
cat file1

2. Creating file using the `touch` command in Linux

We can create an empty file (or multiple empty files) using touch command in Linux. 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



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



touch file_1 file_2 file_3 file_4

touch file_1 file_2 file_3 file_4

How to display timestamp of files in Linux

ls -l



ls -l

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



touch file_1

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.

vi file_1

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



vim file_2

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



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.

Open and edit the file

Open and edit the file

6. Using `mv` command to Create File in Linux

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 crafts a new file named file_3 in the present working directory, incorporating the contents of file_2. If file_3 doesn’t already exist, it is created. However, if a file with the name file_3 is present in the current directory, its contents are replaced with those of file_2. Importantly, it’s crucial to note that this command essentially involves copying the content of file_2 to file_3 and subsequently deleting file_2.

mv command

mv command

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



printf "hello connections"> file_1
printf “hello connections”> file_1

Used `ls` command to list files in the current directory and used `cat` command to see the content inside a file.

Frequently asked questions

1. 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.

2. 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.

3. 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 conclusion, mastering file creation in Linux offers versatile solutions for efficient command-line management. From the simplicity of `cat` to advanced options like `vi` and `vim`, user-friendly choices such as `nano` and `gedit`, and even unexpected versatility in the `mv` command, we explored a diverse toolkit. Frequently asked questions clarified distinctions between file creation and editing, providing a comprehensive understanding of command-line editors. Whether you’re a beginner or an experienced user, this knowledge equips you to navigate Linux with confidence, creating and managing files effortlessly



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads