Tutorial Linux - comando cp

O comando cp é utilizado para copiar arquivos e diretórios no Linux. É um dos comandos básicos do sistema e possui várias opções como copiar arquivos por tipo, diretório, etc.





Copiar um arquivo de uma pasta para outra.

Para copiar um arquivo de uma pasta para outra, basta especificar o caminho da pasta ( caso não seja a pasta atual ), seguido do nome do arquivo e a pasta de destino.

cp /home/joao/ubuntu.iso /home/joao/backup/

É possivel modificar o nome do arquivo de destino, bastando apenas informar o nome desejado no segundo parâmetro, conforme abaixo.

cp /home/joao/ubuntu.iso /home/joao/backup/ubuntu-bkp.iso

Copiar um diretório e todo seu conteúdo recursivamente.

Para copiar todo o conteúdo de um diretório basta usar o parâmetro "-r" e passar o nome da pasta de origem e de destino.

cp -r /home/joao/fotos/ /home/joao/fotos-bkp/

Copiar vários arquivos para um mesmo destino.

É possivel especificar o nome dos arquivos individualmente para copiar, seguindo da pasta de destino, conforme abaixo.

cp arquivo1.txt arquivo2.txt arquivo3.txt /home/joão/backup-arquivos/

Copiar vários diretórios para um mesmo destino.

Assim como na cópia de arquivos, é possivel passar o nome de várias pastas para copiar separadamente, seguido da pasta de destino. No exemplo abaixo as pastas "mp3" e "fotos" serão copiadas para a pasta "backup-arquivos".

cp -r /home/joao/mp3/ /home/joao/fotos/ /home/joao/backup-arquivos/

Copiar arquivos baseado em suas extensões.

Para copiar apenas arquivos de determinadas extensões, basta usar os caracteres asterisco e ponto com o tipo de arquivo para copiar.

cp *.mp3 /home/joão/backup-mp3/

Copiar arquivos com confirmação antes de sobreescrever.

Para evitar sobreescrever arquivos com o mesmo nome na pasta destino, deve-se usar o parâmetro "-i" para confirmar a substituição dos arquivos.

cp -i *.avi /home/joão/backup-videos/

Copiar arquivos preservando as permissões.

Para manter as permissões dos arquivos assim como o dono e grupo, deve-se usar o parâmetro "-p".

cp -p *.doc /home/joão/documentos/