man dd (Commandes) - Convertir et copier un fichier.

NOM

dd - Convertir et copier un fichier.

SYNOPSIS

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

DESCRIPTION

dd copie un fichier (par défaut, depuis l'entrée standard vers la sortie standard) en permettant de sélectionner la taille de bloc, et d'effectuer des conversions.

Il lit son entrée bloc par bloc, en utilisant la taille des blocs d'entrée mentionnée (par défaut 512 octets). Si l'option bs=octets est présente, et si aucune autre conversion que sync, noerror ou notrunc n'est indiquée, il écrit la quantité de données lues (qui peut être plus petite que celle demandée) dans un bloc de sortie indépendant. Ce bloc a exactement la même taille que les données lues, sauf si la conversion sync a été réclamée, auquel cas les données sont complétées avec des octets nuls, ou des espaces (voir plus bas).

Sinon, l'entrée, lue un bloc à la fois, est traitée et les résultats sont regroupés et écrits par blocs de la taille indiquée. La taille finale des blocs de sortie peut être inférieure à celle des blocs d'entrée.

Les options prenant une valeur numérique peuvent être suivies d'un multiplicateur : `k'=1024, `b'=512, `w'=2, `c'=1. `w' et `c' sont des extensions GNU, et `w' ne devrait jamais être utilisé car il signifie 2 sur le Système V et 4 sur 4.2BSD). Deux expressions numériques, ou plus, peuvent être multipliées en insérant un `x' entre elles. La version GNU fileutils-4.0 accepte également les multiplicateurs suivants dans les tailles de blocs (bs=, cbs=, ibs=, obs=) : M=1048576, G=1073741824, et ainsi de suite avec T, P, E, Z, et Y. Un suffixe `D' arrondit ces multiplicateurs en décimal : kD=1000, MD=1000000, GD=1000000000, etc. (Notez que pour les commandes ls, df, du, la taille des M, G, etc. est déterminée par l'environnement, mais qu'elle est fixe pour dd).

OPTIONS

if=fichier
Lire les données depuis le fichier indiqué plutôt que depuis l'entrée standard.
of=fichier
Écrire les données dans le fichier mentionné, et non pas sur la sortie standard. Si conv=notrunc n'est pas indiqué, le fichier est initialement tronqué à la taille spécifiée par seek= (0 octets si seek= n'est pas fourni).
ibs=nombre
Lire le nombre indiqué d'octets en une fois. Par défaut 512.
obs=nombre
Écrire le nombre indiqué d'octets en une fois. Par défaut 512.
bs=nombre
Lire et écrire le nombre indiqué d'octets en une fois. A priorité sur ibs et obs. (et indiquer bs n'est pas équivalent à indiquer la même valeur pour ibs et obs du moins lorsqu'aucune autre conversion que sync, noerror et notrunc n'est indiquée, car cela indique que chaque bloc d'entrée doit être copié dans un bloc de sortie indépendant, sans regrouper les blocs plus courts).
cbs=nombre
Indique la taille des blocs pour les conversion block et unblock.
skip=nombre
Ignorer le nombre indiqué de blocs (dont la taille est fournie par ibs) au début de la lecture.
seek=nombre
Ignorer le nombre indiqué de blocs (dont la taille est fournie par ibs) au début de l'écriture.
count=nombre
Copier seulement le nombre indiqué de blocs (dont la taille est fournie par ibs), et non pas tout jusqu'à la fin du fichier.
conv=conversion[,conversion]...
Modifier le fichier comme indiqué par l'argument conversion, qui peut prendre les valeurs suivantes (pas d'espace autour des virgules lorsque plusieurs arguments sont fournis) :

ascii
Convertir l'EBCDIC en ASCII.
ebcdic
Convertir l'ASCII en EBCDIC.
ibm
Convertir l'ASCII en EBCDIC IBM.
block
Compléter les blocs se terminant par un saut de ligne avec des espaces, jusqu'à atteindre la taille mentionnée par cbs.
unblock
Remplacer les espaces en fin de blocs (de taille cbs) par un saut de ligne.
lcase
Transformer les majuscules en minuscules.
ucase
Transformer les minuscules en majuscules.
swab
Échanger par paire les octets lus en entrée. Contrairement à la commande dd d'Unix, la version GNU fonctionne également lorsqu'on copie un nombre impair d'octets. Dans ce cas, le dernier octet est tout simplement copié. [POSIX 1003.2b, interprétations PASC 1003.2 #3 and #4]
noerror
Continuer même après des erreurs de lecture.
notrunc
Ne pas limiter la taille du fichier de sortie.
sync
Compléter chaque bloc lu avec des NULs pour atteindre la taille ibs.

OPTIONS STANDARDS GNU

--help
Afficher un message d'aide sur la sortie standard, et se terminer correctement.
--version
Afficher un numéro de version sur la sortie standard, et se terminer correctement.
--
Fin de la liste d'options.

ENVIRONNEMENT

Les variables LANG, LC_ALL, LC_CTYPE et LC_MESSAGES ont leurs significations habituelles.

CONFORMITÉ

POSIX 1003.2.

EXEMPLE

Souvent, un lecteur de bandes n'accepte pas des blocs de tailles arbitraires, et dd recevra une erreur d'entrée/sortie pour le dernier morceau de données qui ne rentre pas intégralement dans un bloc. Utilisez `dd if=mon_fic of=/dev/ma_bande conv=sync' pour que tout soit écrit sur la bande. Bien sûr, la lecture fournira un fichier légèrement plus grand, avec des octets nuls ajoutés à la fin.

BOGUES

Les commandes du type `dd if=mon_fic of=/dev/fd0 bs=1k seek=172' échouent sur certains systèmes car dd essaye de tronquer le fichier de sortie, mais cela n'est pas possible sur un périphérique de type bloc. Dans ce cas, utilisez l'option `conv=notrunc'.

NOTES

Cette page de manuel documente la version de dd se trouvant dans le paquet fileutils-4.0. D'autres versions peuvent varier légèrement.

TRADUCTION

Christophe Blaess, 1996-2003.