Scroll to navigation

DD(1) General Commands Manual DD(1)

NOME

dd - converte e copia um arquivo

SINOPSE

dd [--help] [--version] [if=arquivo] [of=arquivo] [ibs=bytes] [obs=bytes] [bs=bytes] [cbs=bytes] [skip=blocos] [seek=blocos] [count=blocos] [conv={ascii, ebcdic, ibm, block, unblock, lcase, ucase, swab, noerror, notrunc, sync}]

DESCRIÇÃO

dd copia um arquivo (da entrada padrão para a saída padrão, por padrão) usando tamanhos de blocos de entrada e saída especificados, enquanto está fazendo opcionalmente conversões nele.
Ele lê um bloco de entrada de uma vez, usando o tamanho especificado de um bloco de entrada (o padrão é 512 bytes). Se a opção bs=bytes é fornecida, e nenhuma conversão a não ser sync, noerror, ou notrunc são especificadas, ele escreve a quantia de dados lidos (o qual pode ser menor que o requerido) num bloco de saída separada. Este bloco de saída tem precisamente o mesmo tamanho que o lido a menos que a conversão sync seja especificada, neste caso os dados serão preenchidos com NULOS (ou espaços, veja abaixo).
De outra forma, a entrada, lê um bloco de uma vez, é processada e o resultado é coletado e escrito em blocos com o tamanho de bloco de saída especificado. O bloco final de saída pode ser menor.
As opções de valor numérico abaixo (bytes e blocos) podem ser seguidas de multiplicadores: 'k'=1024, 'b'=512, 'w'=2, 'c'=1 ('w' e 'c' são extensões GNU; 'w' nunca deve ser usada - significa 2 em System V e 4 no 4.2BSD). Duas ou mais tais expressões numéricas podem ser multiplicas colocando 'x' entre elas. A versão do Utilitários de Arquivo GNU 4.0 também permite os seguintes sufixos multiplicativos na especifição de tamanho de bloco (no bs=, cbs=, ibs=, obs=): M=1048576, G=1073741824, e assim para T, P, E, Z, Y. Um sufixo 'D' torna-os decimais: kD=1000, MD=1000000, GD=1000000000, etc. (Note que para ls, df, du o tamanho de M etc. é determinado por variáveis de ambiente, mas para dd ela é fixa.)

OPÇÕES

if=arquivo
Lê a partir do arquivo ao invés da entrada padrão.
of=arquivo
Escreve no arquivo ao invés da saída padrão. A menos que conv=notrunc seja fornecido, dd trunca o arquivo para zero bytes (ou para o tamanho especificado com seek=).
ibs=bytes
Lê a quantidade de bytes de uma vez. O padrão é 512.
obs=bytes
Escreve a quantidade de bytes de uma vez. O padrão é 512.
bs=bytes
Lê e escreve a quantidade de bytes de uma vez. Isto cancela ibs e obs. (E selecionando bs não é equivalente com a seleção de ambos ibs e obs para este mesmo valor, pelo menos quando nenhuma conversão exceto sync, noerror e notrunc é especificada, desde que ela estipula que cada bloco de entrada será copiado para a saída como um único bloco sem agregar blocos pequenos.)
cbs=bytes
Especifica a conversão de tamanho de bloco para bloco e não_bloco.
skip=blocps
Salta blocos ibs-byte blocos no arquivo de entrada antes da cópia.
seek=blocos
Salta blocos obs-byte blocos no arquivo de saída antes da cópia.
count=blocks
Copia blocos ibs-byte blocos do arquivo de entrada, ao invés de tudo até o final do arquivo.
conv=CONVERSÃO[,CONVERSÃO]...
Converte o arquivo conforme especificado pelo(s) argumento(s) de CONVERSÃO
Conversões:
ascii
Converte EBCDIC para ASCII.
ebcdic
Converte ASCII para EBCDIC.
ibm
Converte ASCII para EBCDIC alternado.
block
Para cada linha na entrada, a saída tem cbs bytes, recolocando a nova linha de entrada com espaço e enchendo com espaços se necessário.
unblock
Recoloca espaços em cada bloco de entrada cbs-sized como uma nova linha.
lcase
Altera letras maiúsculas para minúsculas.
ucase
Altera letras minúsculas para maiúsculas.
swab
Troca todos os pares de bytes de entrada. Se um número impar de bytes são lidos o último é simplesmente copiado (desde que não haja troca com ele). [POSIX 1003.2b, interpretações PASC 1003.2 #3 and #4]
noerror
Continua depois de erros de leitura.
notrunc
Não trunca o arquivo de saída.
sync
Enche todos os blocos de entradas para o tamanho de ibs com valores de zero no final.

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.

DE ACORDO COM

POSIX 1003.2

EXEMPLO

Freqüentemente um controlador de fita não aceita tamanhos de blocos arbitrariamente, e dd induziria um erro de E/S para o último fragmento de dados que não ocupa um bloco completo. Use 'dd if=meu_arquivo of=/dev/mytape conv=sync' para conseguir tudo na fita. É claro, lendo ele novamente você verá um arquivo um pouco maior, com zeros adicionados no fim.

NOTAS

Esta página descreve dd como é encontrada no pacote Utilitários de Arquivo 4.0; outras versões podem ser um pouco diferentes. 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)
11/1998 Utilitários de Arquivo 4.0