cp command
The cp
command, short for “copy,” is the main Linux utility for duplicating files and directories. Whether making a backup, organizing a project, or moving content, cp
allows smooth transfers and ensures the original remains unchanged.
To use cp
, provide at least two arguments: a source and a target.
cp [source_file] [destination]
If you specify a directory as the destination, the file is copied into that directory.
cp report.md backup_report.md
If backup_report.md
doesn’t exist, it gets created. If it exists, the old content is lost, replaced by the new copy.
cp intro.txt summary.txt notes.txt /archive/
All three files now appear in the /archive
folder. If the directory doesn’t exist, cp
creates it and fills it with the specified files (as long as you have permissions).
cp -R projectX/ backup_projectX/
The -R
flag makes cp
copy the entire directory, including subfolders and files, preserving structure.
Option | Description | Example |
---|---|---|
-i | Prompt before overwriting existing files | cp -i notes.txt /archive/ |
-n | Don’t overwrite existing files in the destination | cp -n report.md /archive/ |
-r, -R | Copy directories and their contents recursively | cp -r images/ backup_images/ |
-v | Show progress and copied files | cp -v *.pdf /backup/ |
-p | Preserve original file attributes (timestamps, permissions, etc.) | cp -p config.yaml /backup/ |
-u | Only copy if source file is newer or missing in destination | cp -u draft.txt /docs/ |
-f | Force overwrite by removing destination file if needed | cp -f log.csv results/ |
-a | Archive mode: preserve structure and metadata, copy recursively | cp -a mydir/ copydir/ |
Easily move groups of files by pattern:
cp *.jpg dummy_photos/
Copies all .jpg
files to the dummy_photos
folder.
Instead of overwriting, create a backup copy:
cp --backup report.md /archive/
If a file with the same name exists at the destination, a backup gets created.
Mastering the cp
command helps you protect, organize, and move data efficiently on any Linux system. Understanding its options keeps your work safe and saves time especially when handling critical system or project files.
Read More: History of Linux
Install Kali Linux Here
Overview WhatsMyName is a free, community-driven OSINT tool designed to identify where a username exists…
Managing disk usage is a crucial task for Linux users and administrators alike. Understanding which…
Efficient disk space management is vital in Linux, especially for system administrators who manage servers…
Knowing how to check directory sizes in Linux is essential for managing disk space and…
Managing user accounts is a core responsibility for any Linux administrator. Whether you’re securing a…
Linux offers powerful command-line tools for system administrators to view and manage user accounts. Knowing…