Expanding on cp, mv, and rm commands
In the previous entry we covered some of the very basics of the Linux Command Line, in this entry we’re going to look at a few of the options for the copy, move and remove commands. Enjoy.
Get the Flash Player to see this player.
Copying
To copy files, you use the cp command. The following will copy file to file2. Note that if file2 doesn’t exist, it’ll be created, but if it exists, it’ll be overwritten:
$ cp file file2
There aren’t any undo commands in the Linux CLI, so accidentally overwriting an important file would probably make you pull your head off. The risk of doing so is smaller if you use the -i option (”interactive”) with cp. The following does the same as the above, but if file2 exists, you’ll be prompted before overwriting:
$ cp -i file file2
cp: overwrite `file2′? n
$
So it’s a good idea to use the -i option whenever you’re dealing with important files you don’t want to lose!
If you want to copy file into directory dir1:
$ cp file dir1
The following would do the same as the above, copy file into dir1, but under a different name:
$ cp file dir1/file2
You can also copy multiple files into one directory with a single command:
$ cp file1 file2 file3 dir1
Note that if the last argument isn’t a directory name, you’ll get an error message complaining about it.
Moving and renaming
The mv command can be used for moving or renaming files. To rename a file, you can use it like this:
$ mv file file2
If file2 doesn’t exist, it’ll be created, but if it exists, it’ll be overwritten. If you want to be prompted before overwriting files, you can use the -i option the same way as with cp:
$ mv -i file file2
mv: overwrite `file2′? y
$
To move the file into another directory:
$ mv file dir1
If you want to rename the file to file2 and move it into another directory, you probably already figured out the command:
$ mv file dir1/file2
Removing files
The rm command is used for removing files and directories. To remove a file:
$ rm file
If you use the -i option, you’ll be prompted before removing the file:
$ rm -i file
You can also delete more files at once:
rm file1 file2
Be careful with the rm command! As I already told you, Linux doesn’t have any undo commands, and it doesn’t put files into Trash where you can save them later. Once you’ve deleted a file, it’s bye-bye!
Creating directories
Creating a new, empty directory is very easy. You use the mkdir command:
$ mkdir dir1
Create more than one directory at a time
$ mkdir dir2 dir3 dir4
That’s it. It’s really that easy!
Copying and moving directoriesFor copying and moving directories you can use the cp and mv commands just like you use them with files. Yeah, I know. If you’ve already tried to copy a directory with cp, you’ve probably noticed that cp just complains at you. Probably it says something like cp: omitting directory yadda yadda. You see, the cp command wants you to use the -r option if you want to copy a directory with its contents. The -r means “copy recursively”:
$ cp -r dir1 dir2
The above creates a directory named dir2 whose contents will be identical to dir1. However, if dir2 already exists, nothing will be overwritten: the directory dir1 will be copied into the dir2 directory under the name dir2/dir1.
When renaming directories, you use the mv command exactly the same way as with files:
$ mv dir1 dir2
When dealing with directories, mv works a bit like cp does. If dir2 doesn’t exist, the above will rename dir1 to dir2, but if dir2 exists, the directory dir1 will be moved into the dir2 directory under the name dir2/dir1.














Post a comment