[Linux Beginner] How to Use cp, mv, and rm - Safe File Operations
Introduction
cp, mv, and rm along with how to prevent accidents.
Table of Contents
Setting Up a Practice Environment
$ mkdir -p ~/practice/file-ops $ cd ~/practice/file-ops $ pwd
/home/user/practice/file-ops
-p in mkdir -p mean?
practice directory doesn't exist, it creates practice/file-ops all at once.
cp: Copy Files
cp stands for "copy" and is the command to copy files.
Basic Usage
$ echo "Hello Linux" > original.txt $ cp original.txt copy.txt $ ls
copy.txt original.txt
copy.txt was created!
cp source destination. The original file remains unchanged.
Preventing Overwrite Accidents: -i Option
cp will overwrite files with the same name without asking for confirmation.
-i option. It stands for "interactive" and asks for confirmation before overwriting.
$ cp -i original.txt copy.txt
cp: overwrite 'copy.txt'?
y to overwrite, n to cancel, right?
cp -i for safety.
Copying Directories: -r Option
-r option. It stands for "recursive" and copies the entire contents.
$ mkdir mydir $ touch mydir/file1.txt mydir/file2.txt $ cp -r mydir mydir-backup $ ls mydir-backup
file1.txt file2.txt
Key Points for cp Command
cp source destination- Basic formcp -i- Confirmation before overwrite (always use for safety)cp -r- Copy directories
mv: Move and Rename Files
mv stands for "move". It can be used for both moving and renaming files.
Renaming Files
$ mv copy.txt renamed.txt $ ls
mydir mydir-backup original.txt renamed.txt
copy.txt became renamed.txt!
mv "renames". If it's a directory, it "moves".
Moving Files
$ mv renamed.txt mydir/ $ ls mydir
file1.txt file2.txt renamed.txt
renamed.txt moved into mydir.
Preventing Overwrite Accidents: -i Option
cp, mv overwrites files with the same name. So use the -i option.
$ mv -i original.txt mydir/
Important Note about mv
Since mv "moves" files, they disappear from the original location. Before panicking that a file is "gone", check the destination.
Key Points for mv Command
mv source destination- Move or renamemv -i- Confirmation before overwrite (always use for safety)- If destination is a directory, it moves; if it's a filename, it renames
rm: Delete Files
rm stands for "remove" and is the command to delete files. This one requires the most caution.
rm basically cannot be recovered.
Basic Usage
$ touch delete-me.txt $ ls
delete-me.txt mydir mydir-backup
$ rm delete-me.txt $ ls
mydir mydir-backup
Confirmation Before Deletion: -i Option
-i option is especially important for rm. It asks for confirmation before deleting.
$ touch test.txt $ rm -i test.txt
rm: remove regular empty file 'test.txt'?
y to delete, n to cancel, right?
rm -i.
Deleting Directories: -r Option
$ rm -r mydir-backup $ ls
mydir
-r option deletes everything inside, so I recommend checking the contents with ls before using it.
Danger: Don't Use rm -rf
rm -rf is a command that forcibly deletes without confirmation. Beginners should never use it. If you specify the wrong directory, all your important files will be gone.
Key Points for rm Command
rm filename- Delete a filerm -i- Confirmation before deletion (always use)rm -r- Delete directory with all contents- Don't use
rm -rf
Mini Exercises
Exercise 1: Copy a File Safely
Task: Create a file called memo.txt and copy it to memo-backup.txt. Use the overwrite confirmation option.
Show Hint
Use echo to create the file, then use cp with the -i option to copy.
Show Solution
$ echo "Important memo" > memo.txt $ cp -i memo.txt memo-backup.txt $ ls
memo-backup.txt memo.txt mydir
Exercise 2: Move and Rename a File
Task: Move memo.txt into the mydir directory, then rename it to important.txt.
Show Hint
You can use mv twice, or combine moving and renaming in one command.
Show Solution
$ mv -i memo.txt mydir/ $ mv -i mydir/memo.txt mydir/important.txt $ ls mydir
file1.txt file2.txt important.txt original.txt renamed.txt
Or in one command:
$ mv -i memo.txt mydir/important.txt
Exercise 3: Delete a File Safely
Task: Delete memo-backup.txt. Make sure confirmation appears before deletion.
Show Hint
Use the -i option with rm. When prompted, y deletes and n cancels.
Show Solution
$ rm -i memo-backup.txt
rm: remove regular file 'memo-backup.txt'? y
$ ls
mydir
Review
-i option, it asks for confirmation before overwriting or deleting!
cp -i, mv -i, and rm -i a habit, you can prevent most accidents.
rm needs extra caution because there's no recycle bin, right?
ls before operations makes it even safer.
Today's 3-Line Summary
cp -ito copy files,-rto copy directoriesmv -ito move or rename filesrm -ito delete (don't userm -rf)
Master File Operations Through Practice
Solidify what you learned today with hands-on practice at Penguin Gym Linux.