What is cp:

cp (copy) is a command in various Unix and Unix-like operating systems for copy files and directories. It creates an exact same image of a file on a disk with new file name. The command has three principal modes of operation, expressed by the types of arguments presented to the program for copying a file to another file, one or more files to a directory, or for copying entire directories to another directory.

Copy a file

First we gonna create a file “example.txt” and a directory “test” using following commands.

touch example.txt
mkdir test
ls

Now, in the following command we gonna copy a file “example.txt” to the “test” directory.

cp example.txt test


now use following command to check whether example.txt file is copied into test directory.

ls test

Copy multiple files

So in this example we gonna copy multiple files into a directory. Let assume we have many files with .txt extension and all we want to copy them in a directory “test” simply use following command.

cp *.txt test
ls test

* Asterisk means all files matching with .txt extension.

To Copy a Directory

Now we will copy a directory into another directory.
Note: Always use -R (capital R) option whenever you copy a directory so, that complete data having in this directory will also be copied.

We are copying example directory to the test directory.

ls
cp -R example test


Now verify example directory is copied into test directory.

ls test

That’s about it.