CIS120 Linux Fundamentals by Scott Shaper

File Management Commands: cp, mv, and rm

Think of these commands as your file management toolkit in Linux. They're like the basic operations you do with files on your computer - copying, moving, and deleting - but with more power and flexibility.

Quick Reference

Command Description Common Use
cp Copy files and directories Make backups, duplicate files
mv Move or rename files Organize files, change names
rm Remove files and directories Delete unwanted files

Why Learn These Commands?

These commands are essential because:

The cp Command (Copy)

The cp command is like making a photocopy of a file. It creates an exact duplicate of your file in a new location.

cp [options] source destination

Common Options for cp

Option What It Does When to Use It
-i Asks before overwriting files When you want to be safe
-r Copies directories and their contents When copying folders
-v Shows what's being copied When you want to see progress
-p Preserves file attributes (permissions, timestamps) When you need exact copies
-a Archive mode (preserves everything, recursive) When making complete backups
-u Updates only newer files When syncing directories
-l Creates hard links instead of copying When you want to save space
-s Creates symbolic links instead of copying When you want to reference files

Practical Examples

Copying a Single File

Let's say you have a file called notes.txt and want to make a backup:

cp notes.txt notes_backup.txt
Copying to a Directory

To copy a file into another folder:

cp notes.txt /home/user/documents/
Copying Multiple Files

You can copy several files at once:

cp file1.txt file2.txt /home/user/documents/
Copying a Directory

To copy an entire folder and its contents:

cp -r documents backup/
Copying Directory Contents Only

To copy only the contents of a directory (not the directory itself):

cp -r documents/* backup/

This copies all files and subdirectories from documents/ into backup/, but doesn't create a documents folder inside backup/.

The * (asterisk) is a wildcard character that means "all files and directories". In this case, documents/* means "everything inside the documents directory".

The mv Command (Move/Rename)

The mv command does two things: it moves files to new locations and renames them. Think of it like picking up a file and putting it somewhere else.

mv [options] source destination

Common Options for mv

Option What It Does When to Use It
-i Asks before overwriting When you want to be safe
-v Shows what's being moved When you want to see progress
-n Never overwrite existing files When you want to protect existing files
-b Makes backup of existing files When you want to keep old versions
-u Updates only newer files When syncing directories
-f Force move (overwrites without asking) When you're sure about overwriting

Practical Examples

Moving a File

To move a file to another folder:

mv notes.txt /home/user/documents/
Renaming a File

To rename a file (it's just moving it to the same location with a new name):

mv oldname.txt newname.txt
Moving a Directory

To move an entire folder:

mv documents /home/user/backup/

The rm Command (Remove)

The rm command deletes files and directories. Be careful with this one - deleted files can't be recovered from the trash like in Windows or macOS!

rm [options] file

Common Options for rm

Option What It Does When to Use It
-i Asks before deleting Always use this when learning!
-r Removes directories and their contents When deleting folders
-v Shows what's being deleted When you want to see progress
-f Force delete (no confirmation) Use with extreme caution!
-d Removes empty directories When cleaning up empty folders
-I Asks once before deleting many files When deleting multiple files
--preserve-root Prevents deleting the root directory Safety feature (default in modern systems)

Practical Examples

Deleting a File

To delete a single file (with confirmation):

rm -i notes.txt
Deleting Multiple Files

To delete several files at once:

rm -i file1.txt file2.txt
Deleting a Directory

To delete an entire folder and its contents:

rm -ri documents/

Tips for Success

Common Mistakes to Avoid