O comando cp copia arquivos e diretórios, mantendo a origem no lugar. Sua sintaxe básica é:
cp [OPTIONS] SOURCE DESTINATION
Linha de Comando · Lição 10
Aprenda a copiar arquivos e árvores de diretórios controlando substituições e atributos preservados.
O comando cp copia arquivos e diretórios, mantendo a origem no lugar. Sua sintaxe básica é:
cp [OPTIONS] SOURCE DESTINATION
Você pode copiar um arquivo para outro caminho, copiar vários arquivos para um diretório ou copiar recursivamente uma árvore de diretórios.
Coloque primeiro a origem e depois o destino:
$ cp mycoolfile /home/pete/Documents/cooldocs
Se /home/pete/Documents/cooldocs for um diretório existente, a cópia será criada dentro dele com o nome mycoolfile. Você também pode fornecer um novo nome no destino:
$ cp mycoolfile /home/pete/Documents/mycoolfile_backup
No segundo exemplo, os dados copiados recebem o nome mycoolfile_backup.
Qual comando copia draft.txt para um arquivo chamado final.txt, mantendo draft.txt?
Liste primeiro todas as origens e coloque o diretório de destino por último:
$ cp report.txt notes.txt summary.txt /home/pete/Documents/
O último argumento deve ser um diretório quando você fornece mais de uma origem.
Qual comando copia a.txt e b.txt para o diretório existente archive/?
O shell pode expandir padrões curingas para vários caminhos de origem:
*: corresponde a qualquer sequência de caracteres.?: corresponde a qualquer caractere individual.[]: corresponde a um dos caracteres entre colchetes.Por exemplo, copie os nomes terminados em .jpg do diretório atual para Pictures:
$ cp *.jpg /home/pete/Pictures
Visualize as correspondências antes de uma cópia em massa, especialmente quando o destino contiver dados importantes:
$ ls *.jpg
beach.jpg lunch.jpg profile.jpg
$ cp *.jpg /home/pete/Pictures
Antes de copiar *.jpg, qual comando mostra os nomes não ocultos aos quais o padrão corresponde no momento?
Copiar um diretório e tudo abaixo dele exige uma operação recursiva. Use -r ou -R:
$ cp -r Pumpkin/ /home/pete/Documents
Esse comando copia o diretório Pumpkin e seus descendentes para Documents.
-R maiúsculo também solicita uma cópia recursiva:
$ cp -R website /home/pete/backups/
O modo de arquivamento, -a, é útil para cópias de backup. Ele copia recursivamente, preservando links e muitos atributos:
$ cp -a project/ project-backup/
Você quer uma cópia recursiva de project/ no estilo de backup, preservando links e muitos atributos. Qual comando atende a esse objetivo?
Por padrão, cp pode substituir um arquivo existente no destino. Use -i para solicitar confirmação antes da substituição:
$ cp -i mycoolfile /home/pete/Pictures
cp: overwrite '/home/pete/Pictures/mycoolfile'? n
Use -n quando um destino existente não deve ser sobrescrito:
$ cp -n mycoolfile /home/pete/Pictures
A opção -f instrui o GNU cp a tentar remover um destino existente quando não conseguir abri-lo para gravação e depois repetir a cópia. Ela não substitui a verificação cuidadosa dos destinos. Aliases do shell também podem acrescentar opções como -i; portanto, investigue uma solicitação inesperada em vez de presumir uma configuração específica.
Qual comando copia report.txt para backup/, mas ignora um destino existente com o mesmo nome?
Use -p para preservar o modo do arquivo de origem, seu proprietário quando permitido e seus carimbos de data e hora:
$ cp -p mycoolfile /home/pete/backups/
Use -u para copiar uma origem somente quando o destino estiver ausente ou a origem for mais recente:
$ cp -u *.txt /home/pete/Documents/
Outras opções comuns incluem:
-f: força a substituição removendo primeiro o destino, se necessário.-v: mostra cada arquivo conforme ele é copiado.Para praticar a cópia de arquivos e árvores de diretórios, experimente estes laboratórios:
cp, mv e rm para organizar uma estrutura de projeto, mover arquivos e remover diretórios desnecessários.Lição concluída
Agora você sabe copiar arquivos e árvores de diretórios controlando o tratamento dos destinos.
Coloque os operandos de origem antes do destino.
Visualize as correspondências de curingas antes de uma cópia em massa.
Copie árvores de diretórios recursivamente ou no modo de arquivamento.
Confirme, ignore ou substitua conscientemente os destinos existentes.
Preserve atributos ou copie apenas origens mais recentes quando necessário.
Crie uma conta gratuita para salvar esta lição e continuar em qualquer dispositivo.
Criar uma conta gratuita