10. cp (Copiar)

O comando cp é a ferramenta padrão para copiar arquivos e diretórios no Linux. Sua sintaxe básica é cp [ORIGEM] [DESTINO].

Cópia Básica de Arquivos

Para copiar um arquivo, você especifica o arquivo de origem e o diretório ou caminho de destino.

cp meuarquivolegal /home/pete/Documents/documentoslegais

Neste exemplo, meuarquivolegal é o arquivo de origem, e /home/pete/Documents/documentoslegais é o diretório de destino. Você também pode copiar um arquivo e dar-lhe um novo nome no destino.

cp meuarquivolegal /home/pete/Documents/meuarquivolegal_backup

Usando Curingas para Cópia em Massa

Curingas (wildcards) são caracteres especiais que ajudam você a selecionar vários arquivos com base em padrões, oferecendo grande flexibilidade.

  • *: Corresponde a qualquer sequência de caracteres.
  • ?: Corresponde a qualquer caractere único.
  • []: Corresponde a qualquer um dos caracteres contidos nos colchetes.

Por exemplo, para copiar todas as imagens JPEG da sua localização atual para o diretório Imagens:

cp *.jpg /home/pete/Pictures

Copiando Diretórios Recursivamente

Se você tentar copiar um diretório usando cp sem nenhuma opção, receberá um erro. Para copiar um diretório e todo o seu conteúdo, incluindo subdiretórios, você deve usar a flag -r (recursivo).

cp -r Abobora/ /home/pete/Documents

Este comando copia o diretório Abobora e tudo o que está dentro dele para o seu diretório Documents.

Lidando com Sobrescrita de Arquivos

Por padrão, cp sobrescreverá um arquivo no destino se ele tiver o mesmo nome. Para evitar perda acidental de dados, use a flag -i (interativa), que solicita confirmação antes de sobrescrever.

cp -i meuarquivolegal /home/pete/Pictures

Inversamente, se você quiser forçar uma sobrescrita sem qualquer solicitação, pode usar a flag cp -f. Isso é útil em scripts onde a interação do usuário não é possível.

cp -f meuarquivolegal /home/pete/Pictures

Preservando Atributos de Arquivo com cp -p

Quando você copia um arquivo, seus metadados, como tempo de modificação e propriedade, são tipicamente atualizados. Para preservar esses atributos originais, a flag cp -p é essencial. Usar cp -p no linux garante que a cópia seja uma réplica exata, não apenas no conteúdo, mas também em seus metadados.

A flag cp -p é particularmente útil para backups ou ao migrar arquivos onde preservar carimbos de data/hora é fundamental.

cp -p meuarquivolegal /home/pete/backups/

Este comando demonstra como usar linux cp -p para copiar meuarquivolegal preservando seu modo, propriedade e carimbos de data/hora.

Entre para salvar seu progresso de aprendizado

Entrar

Exercícios

Praticar leva à perfeição! Aqui estão alguns laboratórios práticos para reforçar sua compreensão sobre a cópia de arquivos e diretórios no Linux:

  1. Comando cp do Linux: Cópia de Arquivos - Pratique o uso básico, opções avançadas como cópia recursiva, preservação de atributos e o uso de curingas para copiar arquivos e diretórios de forma eficiente.
  2. Organizando Arquivos e Diretórios - Pratique habilidades essenciais de gerenciamento de arquivos do Linux usando os comandos cp, mv e rm para organizar uma estrutura de projeto, mover arquivos e limpar diretórios desnecessários.

Estes laboratórios ajudarão você a aplicar os conceitos em cenários reais e a ganhar confiança na cópia e gerenciamento de arquivos no Linux.

Questionário

Qual flag você precisa especificar para copiar um diretório inteiro?