Como Copiar e Colar Texto, Arquivos e Pastas no Terminal Linux

Copiar e colar é uma das ações mais utilizadas em um computador. Embora seja fácil fazer isso com os atalhos de teclado Ctrl + C e Ctrl + V, no terminal Linux não é tão simples. Você tem várias opções para realizar a tarefa. Aqui está como você pode copiar e colar texto, arquivos e diretórios no terminal Linux.
Índice
- Copiar e Colar Texto
- Copiar e Colar um Único Arquivo
- Copiar e Colar uma Pasta e Seu Conteúdo
- Copiar e Colar Vários Arquivos
- Copiar e Colar Todos os Arquivos do Mesmo Tipo
- Tornar a Cópia Mais Interativa
- Rsync vs CP
- Mover um Arquivo ou Pasta
- Perguntas Frequentes
Leia também: Como Deletar um Diretório no Linux
Copiar e Colar Texto
Se você só quer copiar um pedaço de texto no terminal, tudo o que você precisa fazer é destacá-lo com o mouse e, em seguida, pressionar Ctrl + Shift + C para copiar.
Para colar onde o cursor está, use o atalho de teclado Ctrl + Shift + V.
O atalho de Colar também se aplica quando você copia uma seção de texto de um documento do Word (ou qualquer outro aplicativo) e deseja colá-la no terminal. Por exemplo, você pode copiar um comando de uma página da web no seu navegador e usar o atalho Ctrl + Shift + V para colá-lo no terminal.
Se por algum motivo esses atalhos de teclado não funcionarem, o terminal pode não estar configurado corretamente para isso. Procure opções que permitam personalizar os atalhos de teclado. Estas são instruções para os terminais mais populares:
- Gnome Terminal – Clique no menu hambúrguer e clique em “Preferências.” Navegue até “Atalhos” e role até “Editar.” As opções para “Copiar” e “Colar” aparecerão lá prontas para serem configuradas.
- Konsole – Vá para “Configurações” e depois clique em “Configurar Atalhos de Teclado.” Procure por “Copiar,” configure para usar as combinações de teclas mencionadas anteriormente, e depois faça o mesmo para “Colar.”
A maioria dos outros terminais irá mantê-lo na combinação universal padrão para copiar/colar no console sem a capacidade de configurá-los.
Leia também: Como Usar cURL para Transferência de Dados na Linha de Comando e Mais
Copiar e Colar um Único Arquivo
Sempre que você quiser copiar um arquivo ou pasta na linha de comando do Linux, o atalho de teclado acima não funcionará. Você precisa usar o comando cp. cp é uma abreviação para copiar. A sintaxe também é simples. Use cp seguido do arquivo que você deseja copiar e o destino onde deseja movê-lo.
cp seu-arquivo.txt ~/Documents/
Isso, claro, assume que seu arquivo está no mesmo diretório em que você está trabalhando. Você pode especificar ambos.
cp ~/Downloads/seu-arquivo.txt ~/Documents/Você também tem a opção de renomear seu arquivo enquanto o copia. Especifique o novo nome no destino.
cp ~/Downloads/seu-arquivo.txt ~/Documents/novo-nome.txtLeia também: Como Usar o Comando dd no Linux
Copiar e Colar uma Pasta e Seu Conteúdo
Para copiar uma pasta e seu conteúdo, você precisará informar ao comando cp para copiar recursivamente. Isso é simples o suficiente com a flag -r.
cp -r ~/Downloads/diretorio-de-imagens ~/Pictures/imagens-de-familia
Todo o resto da sua sintaxe é exatamente a mesma. A flag -r serve para informar ao cp que está trabalhando com um diretório e deve copiar seu conteúdo.
Se você quiser que a ação de colar sobrescreva arquivos existentes, pode adicionar a flag -f:
cp -rf ~/Downloads/diretorio-de-imagens ~/Pictures/imagens-de-familiaLeia também: Como Usar o Comando Rm no Linux
Copiar e Colar Vários Arquivos
Você também pode copiar vários arquivos. A linha de comando do Linux permite que você direcione vários itens de uma vez com colchetes {}. Você pode usá-los para listar os nomes de cada arquivo a ser copiado separados por vírgulas.
cp ~/Downloads/{arquivo1.txt,arquivo2.jpg,arquivo3.odt} ~/Documents/
Todos os três arquivos de tipos diferentes serão copiados para o diretório Documents.
Copiar e Colar Todos os Arquivos do Mesmo Tipo
Se você tem um monte de arquivos do mesmo tipo para copiar, pode usar o caractere curinga *. O asterisco/coringa diz à linha de comando do Linux para aceitar absolutamente qualquer coisa naquele lugar. Então, se você disser ao Linux para copiar *.jpg, ele copiará todos os arquivos JPG, independentemente do nome ou do que vem antes da parte .jpg.
cp ~/Downloads/*.jpg ~/Pictures/
Se você quiser usar vários tipos de arquivos, digamos JPG e PNG, pode usar os colchetes de antes.
cp ~/Downloads/*.{jpg,png} ~/Pictures/Leia também: Como Copiar e Colar em Sites que Não Permitem
Tornar a Cópia Mais Interativa
Como você pode ter notado ao seguir este guia, usar cp não lhe dá nenhum tipo de confirmação ou aviso após terminar o que está fazendo, a menos que encontre um erro. Isso pode causar um pouco de desconforto, especialmente quando você está fazendo operações de cópia de arquivos muito grandes em hardware mais lento que pode levar muito tempo para concluir.
Ao anexar a flag -v ao seu comando, você diz ao cp para lhe dar sua saída mais detalhada sobre o que faz. A flag -i fornece avisos de confirmação para que você tenha a chance de cancelar certas operações, como sobrescrever certos arquivos.
cp -rvi ~/Downloads/*.jpg ~/Pictures/Geralmente, as flags -v e -i estão disponíveis em uma ampla gama de comandos que são comuns no Linux.
Rsync vs CP
Se você precisa fazer várias operações de cópia que sobrescrevem arquivos (como criar um backup que você atualizará de vez em quando) por algum motivo, rsync pode simplesmente lhe trazer um sorriso.
rsync é um pouco mais avançado, pois entra nos detalhes de cada arquivo, faz uma comparação completa dos dados em ambos e, dentro do próprio arquivo, apenas sobrescreve os dados que mudaram. Isso é especialmente útil se a pasta de destino estiver em um SSD, pois economiza ciclos de gravação e não degrada desnecessariamente a saúde do disco sobrescrevendo arquivos inteiros.
Aprenda como usar o rsync para copiar arquivos no Linux.
Leia também: Como Salvar a Saída do Terminal em um Arquivo no Linux
Mover um Arquivo ou Pasta
Se você veio aqui procurando mover um arquivo de um lugar para outro sem fazer um duplicado, você pode fazer isso facilmente também, mas mover um arquivo requer o comando mv. A sintaxe é muito semelhante ao cp.
mv ~/Downloads/seu-arquivo.txt ~/Documents/Da mesma forma, você também pode renomear o arquivo.
mv ~/Downloads/seu-arquivo.txt ~/Documents/renomeado.txtHá uma grande diferença, no entanto. Você não precisa da flag -r para mover uma pasta inteira.
mv ~/Downloads/pasta-baixada ~/Pictures/imagens-de-feriasPerguntas Frequentes
O rsync é melhor que o cp?
Nenhum é melhor que o outro, geralmente. rsync fará comparações completas de arquivos nas pastas de origem e destino, consumindo alguns recursos computacionais para economizar largura de banda ou ciclos de gravação. É ótimo se você está constantemente atualizando um backup de uma pasta específica, mas menos ideal se você está apenas fazendo uma única operação de cópia.
cp funciona mais como uma faca suíça que só quer concluir a tarefa. Se você precisa sobrescrever algo, cp faz isso por você. Devido à sua capacidade de interatividade, também é mais amigável para iniciantes e lhe dá um pouco mais de controle sobre o processo de cópia.
Por que não posso apenas usar Ctrl+C para copiar itens do meu terminal?
Em aplicativos de terminal Linux, pressionar Ctrl + C no seu teclado envia um sinal SIGINT (interrupção) para o kernel. É uma maneira simples de dizer ao Linux para parar o que estiver rodando naquele terminal específico.
Se você configurar a função “Copiar” em seu terminal para responder a essa combinação de teclas, você encontrará problemas ao copiar uma linha de texto de um comando em execução enquanto ele ainda está em processo de fazer algo.
Crédito da imagem: Neron Photos no Pexels