Comandos

18 de outubro de 2016

Comando CP

Mais artigos de »
Escrito por: Leonardo Souza
Tags:,

Comando CP

O comando cp é o responsável pela cópia de arquivos e diretórios e pela renomeação deles. Esta última ação é possível ao se copiar um arquivo lhe atribuindo um nome diferente, ou seja, renomeando-o, seja no mesmo diretório ou em outro. Esta prática é ideal para criar cópias de segurança de arquivos de configuração.

A sintaxe do comando é bem simples:

cp arquivo cópia

A expressão “arquivo” representa o arquivo que será copiado. Se o diretório atual for o mesmo do arquivo basta utilizar o nome deste arquivo, caso contrário, será necessário utilizar o caminho completo deste arquivo.



Por outro lado a expressão “cópia” representa o nome que o arquivo terá após a execução do comando. Esta opção, conforme mencionado anteriormente, permite atribuir nomes diferentes a arquivos já existentes no sistema. Um bom uso para isso é criar arquivos de backup antes de alterar configurações de arquivos.

Exemplo 1:

Comando CP

Perceba, neste exemplo, que o comando pwd nos mostra que estamos no diretório raiz, ou seja, o “/” (1). Então executamos o comando dentro deste diretório, copiando o arquivo chamado “arquivo” e que está dentro do diretório /root/diretorio (2). Neste caso, como não estamos no mesmo diretório do arquivo, precisamos digitar o caminho completo.

Este comando conclui, copiando este arquivo com o mesmo nome que possuía antes para o diretório atual, ou seja, o “/”. Isso será feito porque, como não informamos um caminho completo, este arquivo será copiado para o diretório atual. Isso significa que se quisermos que ele seja copiado para um outro diretório, precisamos informá-lo no comando.

Finalizamos o exemplo utilizando o comando ls para visualizar o conteúdo do diretório que estamos e confirmando que o arquivo chamado “arquivo” está presente nele agora (3).

No próximo exemplo vamos analisar um caso em que informamos o diretório para onde desejamos copiar o arquivo.

Exemplo 2.

Comando CP

Mais uma vez o comando pwd nos mostra que estamos no diretório “/” (1). Porém neste caso, desejamos copiar o arquivo para outro diretório. Sendo assim, precisamos informar no comando para qual diretório desejamos copiar este arquivo. Por isso, informamos o diretório /root/diretorio2 (2), é para ele que o arquivo será copiado. Finalizamos o comando realizando, com o comando ls, uma listagem do conteúdo do diretório e podemos ver nele o arquivo copiado (3).

Renomeando arquivos

Como já foi explicado, este comando permite renomear aquivos, basta para isso informar um nome diferente do original na opção de cópia. Deste modo, o arquivo original continuará existindo e será criado um novo com o nome informado.

Veja o exemplo abaixo:

Exemplo 3.

cp3

Este comando será executado a partir do diretório raiz, como pode ser visto pelo comando pwd (1). Sendo assim, como queremos copiar o arquivo para outro diretório, diferente o atual, precisamos informá-lo na opção cópia . Perceba que o arquivo se chamava originalmente “arquivo” e estamos copiando ele com o nome de “arquivo1″ (2). Executamos o comando ls (3) e percebemos que, ao executar o comando, passa a existir dois arquivos neste diretório: o original chamado “arquivo” e a cópia chamado “arquivo1” (4).

Este comando pode ser executado dentro do próprio diretório.

Exemplo 4:

cp4

Neste caso, utilizamos o comando cd (1) para entrar no diretório, executamos o comando ls para confirmar os arquivos presentes nele (2) e vemos apenas o “arquivo(3). Como estamos no diretório em que está o arquivo, não precisamos digitar o caminho completo dele, basta digitar o seu nome e o nome da cópia criada (4). Por fim, executamos o comando ls e podemos ver os dois aquivos presentes após a cópia: o original chamado “arquivo” e a cópia chamado “arquivo1” (4).

Caracteres Coringa

Uma opção interessante do comando cp é a possibilidade de utilizar caracteres coringas para substituir outros caracteres conhecidos ou não. Para isso podemos utilizar o “*” (asterístico), “[]” (colchetes) e “?” (interrogação).

Asterísticos

O asterísticos substitui um grupo qualquer de caracteres, qualquer quantidade de caracteres, incluindo o zero, e para qualquer valor de caractere. Por exemplo, se utilizar a expressão “arquiv*” o comando copiará todos os arquivos iniciados com a expressão anterior ao “*” e que possua qualquer valor no lugar do “*”.

Exemplo 5:

cp-ast

Perceba que neste exemplo, o diretório /root/diretorio2 está vazio, como pode ser visto ao lista seu conteúdo com o comando ls (1). No nosso diretório /root/diretorio temos três arquivos: “arquivo“, “arquivo1” e “arquivo3“. Vamos utilizar o carácter  curinga “*” para copiar todos os arquivos que iniciam com  a expressão “arqui” e possuam qualquer carácter ou conjunto de carácter depois desta expressão e vamos copiá-los para o diretório /root/diretorio2 (2).

Depois de executar o comando cp listamos o conteúdo do diretório /root/diretorio2 (3) e podemos perceber que em seu interior existem agora os três arquivos copiados (4).

Sinal de interrogação

O sinal de interrogação substitui apenas um caractere, qualquer um. Isso significa que se utilizarmos a expressão “arquivo?” apenas os arquivos que possuem o seu nome iniciando com esta expressão “arquivo” e possuem apenas um outro carácter após esta expressão serão referenciados.

Exemplo 6:

cp-int

Neste exemplo, iniciamos listando o conteúdo do diretório atual (1), nele existem dois arquivos o “arquivo” e o “arquivo1”. Vamos utilizar o comando cp para copiar os arquivos iniciados com a expressão “arquivo” e que possuem apenas um carácter após esta expressão (2), para isso utilizamos o carácter “?”. Apenas um dos arquivos atende o requisito, ou seja, o “arquivo1”.

Finalizamos o exemplo executando o comando ls para listar o conteúdo do diretório e vemos que existe agora o arquivo “arquivo3”, esta é uma cópia do “arquivo1”.

Colchetes

os caracteres colchetes são utilizados para substituir um único carácter dentro de uma faixa de valores. Para ilustrar imagine que dentro de um diretório existem vários arquivos no seguinte cenário: “arquivo1“, “arquivo2“, “arquivo3“, “arquivo4“, etc.

Veja este cenário explicitado na imagem abaixo.

Exemplo 7.

ls10

Temos neste diretório vários arquivos, porém queremos copiar apenas os cinco primeiros arquivos. É o que fazemos na imagem abaixo.

Exemplo 8.

cp-col

Iniciamos o exemplo listando o conteúdo do diretório /root/diretorio2, pois vamos copiar arquivos para ele, e confirmamos que não há nenhum arquivo em seu interior (1). Depois executamos o comando que copia todos os arquivos que inciam com a expressão “arquivo” e que possui após esta expressão um valor entre os números 1 e 5 (2).

Por fim, listamos o conteúdo do diretório /root/diretorio2 e constatamos que os arquivo “arquivo1”, “arquivo2”, “arquivo3”, “arquivo4” e “arquivo5” foram copiados para dentro dele.

Copiando Diretórios

A cópia de diretórios por meio do comando cp é muito semelhante a copia de arquivos. Para isso, utiliza-se o parâmetro –r, ele realiza a cópia de forma recursiva, ou seja, o diretórios e seus subdiretórios.

Vamos ao nosso exemplo:

Exemplo 9.

cp-diretorio

Iniciamos listando o conteúdo do diretório e vendo que dentro dele existem dois diretórios “diretorio1” e “diretório2(1). Logo depois, utilizamos o comando cp com o parâmetros “–r” indicando que pretendemos copiar um diretório e depois para onde será copiado este diretório , neste caso para dentro do diretório /root/diretorio2 (2). Finamente, podemos ver com o comando ls que o diretório “diretorio” está presente no diretório /root/diretorio2, ou seja, a cópia foi bem sucedida.

Assim finalizamos a apresentação do comando cp, em caso de dúvidas utilize os comentários.





Sobre o Autor

Foto de perfil de Leonardo Souza
Leonardo Souza
Bacharel em Informática, pós graduado em Segurança de Redes de Computadores e analista de Segurança da Informação. Entusiasta de Segurança da Informação e usuário FreeBSD, porém sem xiismo.




0 Comments


Seja o Primeiro a Comentar!


You must be logged in to post a comment.