Pular para o conteúdo principal
eLearner.app
Módulo 2 · Lição 2 de 34/11 no curso~12 min
Lições do módulo (2/3)

Movendo e copiando (mv e cp)

To reorganize and duplicate files in the terminal, use the cp (copy) and mv (move or rename) commands.


Copying Files and Folders: cp

The basic syntax for copying a file is:

Bash
cp [source] [destination]

It stands for Copy. For example, to copy a file named photo.png into a folder called images, you would type:

Bash
cp photo.png images/

Copying Folders Recursively with -r

If you try to copy a directory using the standard cp command, you will get an error. To copy a folder and all its contents recursively, you must use the -r (or -R, recursive) option:

Bash
cp -r project_folder project_backup

Moving or Renaming Files and Folders: mv

The mv command stands for Move. It is used both to move files and folders into different directories, and to rename them:

Bash
mv [source] [destination]

Moving a Resource

To move a file named document.pdf into a folder called archive:

Bash
mv document.pdf archive/

Renaming a Resource

To change a file's name without moving it to another directory, specify the new filename as the destination:

Bash
mv old_name.txt new_name.txt

Moving and Renaming at the Same Time

You can move and rename a file in a single step:

Bash
mv report.txt archive/monthly_report.txt

Usage Examples and Common Errors

If you try to copy a directory without specifying the recursive -r option, the cp command will fail with an error:

Bash
cp backup backup_copy
# Output:
# cp: -r not specified; omitting directory 'backup'

If you try to move or copy a source file that does not exist, you will receive an error message:

Bash
mv nonexistent_file.txt backup/
# Output:
# mv: cannot stat 'nonexistent_file.txt': No such file or directory

Try it yourself

Exercise 1: Copy a report

Exercício#linux.m2.l2.e1
Tentativas: 0Carregando…

Copy the file 'report.txt' into the 'backup' folder while keeping the original file.

Carregando editor…
Mostrar dica

Use cp with 'report.txt' as the source and 'backup' as the destination.

Solução disponível após 3 tentativas

Exercise 2: Move and rename

Exercício#linux.m2.l2.e2
Tentativas: 0Carregando…

Move the file 'old_notes.txt' into the 'archive' folder, renaming it to 'notes_old.txt' at the same time.

Carregando editor…
Mostrar dica

Use mv, specifying the source file and the destination path including the new filename.

Solução disponível após 3 tentativas

Exercise 3: Copy a directory

Exercício#linux.m2.l2.e3
Tentativas: 0Carregando…

Create a backup copy of the entire 'backup' folder and name it 'backup_dir' (remember to use the recursive option).

Carregando editor…
Mostrar dica

Use the cp command with the -r flag to copy the backup folder to backup_dir.

Solução disponível após 3 tentativas