Provided by: manpages-pt_20040726-4_all
NOME
cp - copia arquivos e diretórios
SINOPSE
cp [opções] arquivo caminho cp [opções] arquivo... diretório Opções POSIX: [-fipRr] Opções GNU (forma reduzida): [-abdfilprsuvxPR] [-S SUFFIX] [-V {numbered,existing,simple}] [--sparse=WHEN] [--help] [--version] [--]
DESCRIÇÃO
cp copia arquivos (ou, opcionalmente diretórios). Você pode copiar uma arquivo para um destino fornecido, ou copiar arbitrariamente muitos arquivos para um diretório destino. Se o último argumento de nome é um diretório existente, cp copia cada arquivo origem para aquele diretório (com o mesmo nome). De outra forma, se somente dois arquivos são fornecidos, ele copia o primeiro para o segundo. É um erro se o último argumento não for um diretório e mais que dois argumentos serem fornecidos. (Assim, 'cp -r /a /b' irá copiar /a to /b/a e /a/x para /b/a/x no caso de /b já existir, mas ele irá copiar /a para /b e /a/x para /b/x se não havia /b antecipadamente.) O modo de criação dos arquivos e diretórios será igual ao dos arquivos originais, por 0777, e modificado pela umask do usuário (a menos que a opção -p especificada). (Mas durante cópia de diretórios de forma recursiva, diretórios recentemente criados terão temporariamente recebido o modo final deles ORed com S_IRWXU (0700), para que possa permitir processos de leitura, escrita e procura nos diretório recentemente criados.) Coisa alguma é feita quando tenta copiar um arquivo para si mesmo (exceto possivelmente de uma mensagem de erro). Quando copiando para um arquivo existente diferente este é aberto usando 'open(caminho, O_WRONLY | O_TRUNC)'. Quando copiando para um novo arquivo este é criado usando 'open(caminho, O_WRONLY | O_CREAT, modo)'. Se isto falha, o arquivo existe, e a opção -f deve ser dada, cp tentará deletar (unlink) o arquivo existente, e então substituir pelo novo arquivo.
OPÇÕES POSIX
POSIX reconhece 4 opções e meia: -f Remove arquivos destinos existentes se requerido. (Veja acima.) -i Pergunta se deve ser;a sobrescrito um arquivo de destino regular. (Escreve a questão no erro padrão, e lê a resposta na entrada padrão. Somente copia sobre em caso de resposta afirmativa..) -p Preserva o original proprietário, grupo, permissões (incluindo os bits setuid e setgid), tempo da última modificação e o tempo do último acesso. No caso da de duplicação do proprietário ou grupo falhar, os bits setuid e setgid serão zerados. (Note que mais tarde a origem e a cópia deverão ter diferentes tempo de último acesso, desde que a operação de cópia é um acesso no arquivo origem.) -R Copia diretórios de forma recursiva, e faz algo incerto quando outros objetos a não ser arquivos ordinários ou diretóriso são encontrados. (Assim, a cópia de um FIFO ou arquivo especial é um FIFO ou um arquivo especial.) -r Copia diretórios de forma recursiva, e faz alguma coisa inespecífica com outros objetos que não são arquivos normais ou diretórios. (Assim, ele é permitido, na realidade encorajado, para ter a opção -r um sinônimo para -R. De qualquer forma, o comportamento bobo, desse jeito da presente versão GNU de cp (veja abaixo) não é proibida.)
DETALHES GNU
Geralmente, arquivos são escritos da mesma forma que são lidos. Para exceções, veja a opção --sparse abaixo. Por padrão, 'cp' não irá copiar diretórios (veja -r abaixo). cp geralmente recusa a copia de uma rquivo em si mesmo, com a segunte exceção: se --force --backup é especificado com origem e destino identicos, e referindo-se a um arquivo regular, cp irá fazer um arquivo de cópia de segurança, que pode ser regular ou numerado, como especificado em formas usuais. Isto é útil quando se procura um modo simples para fazer cópias de segurança de um arquivo existente depois de alterá-lo.
OPÇÕES GNU
-a, --archive Preserva o máximo possível a estrutura e atributos dos arquivos originais na cópia (mas não preserva a estrutura do diretório). Equivalente para -dpR. -d, --no-dereference Copia ligações simbólicas com ligações simbólicas no lugar de copiar os arquivos para as quais apontam, e preservam ligações fortes entre arquivos de origrem nas cópias. -f, --force Remove os arquivos de destino existentes, e nunca pergunta antes de fazer isto. -i, --interactive Pergunta se será sobrescrito o arquivo regular de destino. -l, --link Cria ligações fortes ao inves de cópia de nào diretórios. -p, --preserve Preserva a original proprietário, grupo, permissões e rótulo de tempo. -P, --parents Forma o nome de cada arquivo destino pelo anexação no diretório destino de um barra e o nome especificado do arquivo origem. O último argumento fornecido para cp deve ser o nome de um diretório existente. Por exemplo, o comando: cp --parents a/b/c diretório_existente copia o arquivo 'a/b/c' para o 'diretório_existente/a/b/c', criando qualquer diretório intermediário perdido. -r Copia diretórios de forma recursiva, copiando qualquer não-diretório e não-ligação simbólica (isto é, FIFOs e arquivos especiais) como se fossem arquivos regulares. Isto significa tentar uma leitura em cada arquivo origem e uma escrita para o destino. Assim, com esta opção, (Isto é uma falha. Ele pensar que você tem que evitar -r e usa -R se você não sabe o que esta na árvore que você está copiando. Abrindo um arquivo de dispositivo desconhecido, por exemplo um scanner, tem efeito desconhecido sobre o hardware.) -R, --recursive Copia diretórios de forma recursiva, preservando os não-diretórios (veja -r acima). --sparse=WHEN Um 'arquivo espaçado' contem 'buracos' - seqüencias de zero bytes que não ocupam qualquer bloco de disco físico; a chamada de sistema 'read' lê estes como zeros. Isto pode economizar espaço de disco e aumentar a velocidade, desde que muitos arquivos binários contenham lotes consecutivos de zero bytes. Por padrão, cp detecta buracos no arquivo de entrada via uma heuristica bruta e cria a saída correspondente saída espaçada também. O valor WHEN pode ser um dos seguintes: auto O comportamento padrão: o arquivo de saída e espaçado se o arquivo de entrada é espaçado. always Sempre cria um arquivo de saída espaçado. Isto é útil quando o arquivo de entrada reside num sistema de arquivo que não suporta arquivos espaçados, mas o arquivo de saída está sobre o sistema de arquivos que suporta. never Nunca crie um arquivo de saída espaçado. Se você encontrar uma aplicação para esta opção, deixe-nos saber. -s, --symbolic-link Cria um ligação simbólica ao invês de copiar sobre não-diretórios. Todo nome da origem deve ser absoluto (comecando com '/') a menos que o arquivo de destino esteja no diretório corrente. Esta opção meramente resulta em uma mensagem de erro em sistemas que não suportam ligações simbólicas. -u, --update Não copia um não-diretório que tem um destino existente com o igual ou maior tempo de modificação. -v, --verbose Imprime o nome de cada arquivo antes de copia-lo. -x, --one-file-system Pula sub-diretórios que são de diferentes sistemas de arquivos do qual a cópia tenha.
OPÇÕES GNU DE CÓPIAS DE SEGURANÇA
As versões GNU de programas como, cp, mv, ln, install e patch podem criar cópias de segurança dos arquivos que foram sobrescritos, alterados ou destruídos, se isto for desejado. Aqueles arquivos de seguranças são pedidos pela opção -b. E nomeados como é especificado pela opção -V. No caso de o nome do arquivo de segurança for fornecido pelo nome do arquivo mais um sufixo, o sufixo é especificado pela opção -S. -b, --backup Cria cópias de segurança dos arquivos que são sobrescritos ou removidos. -S SUFIXO, --suffix=SUFIXO Anexa o SUFIXO para cada arquivo de segurança feito. Se esta opção não é especificada, o valor da variável de ambiente SIMPLE_BACKUP_SUFFIX é usada. E se SIMPLE_BACKUP_SUFFIX não for selecionada, o padrão é '~'. -V MÉTODO, --version-control=MÉTODO Especifíca como as cópias de segurnaça serão nomeadas. O argumento MÉTODO pode ser 'numeradas' (ou `t'), 'existing' (ou `nil'), or 'never' (or `simple'). Se esta opção não é especificada, o valor da variável de ambiente VERSION_CONTROL é usado. E se VERSION_CONTROL não é selecionado, o tipo padrão das cópias de segurança é 'existing'. Esta opção correspnde a variável Emacs 'version-control'. Os MÉTODOs são válidos (abreviações unicas são aceitas): t, numbered Sempre fará cópias de segurança numeradas. nil, existing Fará cópia de segurança numeradas de arquivos, e simples cópias de segurança dos outros. never, simple Sempre fará cópias de segurança simples.
OPÇÕES PADRÃO GNU
--help Imprime a mensagem de uso na saída padrão e sai. --version Imprime a versão na saída padrão e sai. -- Encerra a lista de opção.
AMBIENTE
As variáveis LANG, LC_ALL, LC_CTYPE and LC_MESSAGES tem seu significado usual. Para versões GNU, as variáveis SIMPLE_BACKUP_SUFFIX e VERSION_CONTROL controlam as cópias de segurança nomeando arquivo, como descritas acima.
DE ACORDO COM
POSIX 1003.2
NOTAS
Esta página descreve cp é encontrada no pacote Utilitários de Arquivos 4.0; outras versões podem ser um pouco diferente. Envie correções e adições para aeb@cwi.nl. Relatório de problemas no programa para fileutils-bugs@gnu.ai.mit.edu.
TRADUZIDO POR LDP-BR em 21/08/2000.
André L. Fassone Canova <lonelywolf@blv.com.br> (tradução) Ricardo C.O. Freitas <english.quest@best-service.com> (revisão)