How to copy (and paste) files and folders from the Linux command line

Copying and pasting files is one of the most basic things you can do on your computer. On Linux, you have several options to accomplish this.

Copying and pasting files is one of the most basic things you can do on your computer. On Linux, you have several options to accomplish this. On the command line, everything takes place more directly, allowing you more control and in some cases, simplifying things significantly.

Copy a single file

How to copy (and paste) files and folders from the Linux command line Picture 1How to copy (and paste) files and folders from the Linux command line Picture 1

Whenever you want to copy a file or directory in the Linux command line, you will use the cp command . cp stands for copy. The syntax is also simple. Use cp followed by the file you want to copy and the destination where you want to reach the copy.

 cp your-file.txt ~/Documents/ 

Of course, the above command assumes that your file is in the same directory you are working on. You can specify both the original file location and where you want to place the copy.

 cp ~/Downloads/your-file.txt ~/Documents/ 

You also have the option to rename your file while copying it. Specify a new name at the destination.

 cp ~/Downloads/your-file.txt ~/Documents/new-name.txt 

Refer to the article: How to copy and rename files in Linux for more details.

Copy a directory and its content

How to copy (and paste) files and folders from the Linux command line Picture 2How to copy (and paste) files and folders from the Linux command line Picture 2

To copy a directory and its contents, you will need to issue cp to copy. This is quite simple with the -r flag .

 cp -r ~/Downloads/pictures-directory ~/Pictures/family-vacation-pics 

All the rest of the syntax is identical. Flag -r is used to inform cp that it is working with a directory and must copy its contents.

Copy multiple files

How to copy (and paste) files and folders from the Linux command line Picture 3How to copy (and paste) files and folders from the Linux command line Picture 3

You can also copy multiple files. The Linux command line allows you to target multiple items at once with brackets {} . You can use them to list the names of each file that will be copied with commas.

 cp ~/Downloads/{file1.txt,file2.jpg,file3.odt} ~/Documents/ 

All 3 files are in different file types and will be copied into the Documents folder .

Copy all files of the same type

How to copy (and paste) files and folders from the Linux command line Picture 4How to copy (and paste) files and folders from the Linux command line Picture 4

If you have a lot of files of the same type to copy, you can use wildcards * . This asterisk or wildcard requires the Linux command line to take care of everything placed there. So if you tell Linux to copy * .jpg , it will copy all JPG files, regardless of the name or anything that appears before the .jpg extension.

 cp ~/Downloads/*.jpg ~/Pictures/ 

If you want to use a variety of files, assume JPG and PNG, you can use curly braces {} .

 cp ~/Downloads/*.{jpg,png} ~/Pictures/ 

Move a file or folder

If you're looking to move a file from one place to another, but don't make a copy, you can do it easily, but moving a file requires using the mv command . The syntax is very similar to cp.

 mv ~/Downloads/your-file.txt ~/Documents/ 

Similarly, you can also rename it.

 mv ~/Downloads/your-file.txt ~/Documents/renamed.txt 

There is a big difference between cp and mv. You do not need the -r flag to move the entire directory.

 mv ~/Downloads/downloaded-folder ~/Pictures/vacation-pics 

That's all it takes to copy (and paste) files and folders from the Linux command line. You are ready to start copying and moving your files from the command line! You may find that using the command line can be very effective in some situations. However, in other situations, using the GUI will be easier. After working with Linux for a while, you will find out what is the best option for you.

Hope you are succesful.

4.6 ★ | 5 Vote