Que signifie dd?

42

Je sais très bien ce que la commande fait, mais man dd, info dddites - moi: « Convertir et copier un fichier », tout comme GNU Coreutils .

Google dit que c'est une abréviation de tout ce qui se situe entre la médecine et un mauvais argot de discussion sur le Web; sauf que quelqu'un dit que cela signifie "destructeur de données", quelque chose utilisé dans l'informatique judiciaire - Je serais horrifié si mon DD détruisait mes données!

Une idée? :-)


Mise à jour : Bien sûr, j'ai dû vérifier le fichier de jargon :

Unix dd (1) a été conçu avec une syntaxe étrange et distincte pour les mots clés non-Unixy, qui rappelle le JCL IBM System / 360 (qui comportait une spécification de définition de jeu de données complexe pour les périphériques d'E / S).

Cela semble toujours assez ambigu, mais ensuite, il est écrit:

bien que la commande ait répondu à un besoin, la conception de l'interface était clairement une farce.

Il h :-)

inverser
la source
6
ddest particulièrement efficace pour détruire des données si vous ne faites pas attention. "Destructeur de données" n'est pas vraiment un abus de langage.
LawrenceC
Référence croisée: askubuntu.com/a/645765/25036 (2015-07-08) sous Que signifie le nom de commande «dd»?
Graham Perrin

Réponses:

28

Wikipedia ( dd) affirme qu'il a été nommé d'après la commande DD JCL d'IBM, qui correspond à la définition de données . J'ai toujours pensé que cela signifierait dupliquer les données .

M. Shunz
la source
11
Il indique également It is jokingly said to stand for "disk destroyer", "data destroyer", or "delete data"- en faisant des références croisées avec le fichier Jargon, cliquez sur un commutateur, je crois que c'est la réponse que nous recherchons!
inverser
2
J'ai toujours pensé que c'était aussi une duplication de données.
Mikel
3
C'était certainement la définition du jeu de données. Le jeu de données était le terme IBM pour Fichier. Dans JCL, vous deviez écrire un enregistrement DD pour définir le fichier à utiliser et attribuer un code de numéro d’unité à 2 caractères à référencer dans vos instructions Open.
Michael Dillon
2
Pouvez-vous ajouter une référence?
Mikemaccana
5
Au sujet du nom cc / dd: Spurious. dd a toujours été nommé d'après les cartes dj JCL. - Dennis Ritchie (alt.folklore.computers, 2004)
mr.spuratic
35

Bien que la «meilleure réponse» ait été donnée, ce site indique le contraire :

En fait, cela signifie «Copier et convertir» et n’a été renommé ddque parce qu’il ccétait réservé au compilateur C! C’est l’information authentique que j’ai obtenue des pages de manuel de notre Unix-V7 sur le PDP 11 de notre université.

Courrier original sur comp.unix.misc(usenet): La liste des acronymes Unix

Rob
la source
3
Mais les messages continuent à dire:He's not sure if it was ever actually called cc in UNIX, but he is _certain_ that the name dd comes from the jcl dd command (so does the wreched syntax).
Justin Ethier
2
Cela prouve toute une enquête. 'Copy and Convert' décrit joliment la fonction du jj! Certains systèmes avaient cc comme "Compilateur C" et un moment d'ampoule: gcc signifie-t-il "Compilateur GNU C"? :-) Intéressant.
inverser
2
Il y a un problème très simple impliqué ici. 'DD' est issu du JCL d'IBM et 'dd' de UNIX .. l'un est en majuscule, l'autre en minuscule où l'affaire a été arrêtée ... IBM n'avait pas grand-chose à voir avec UNIX et vice-versa. ... et DD / dd ont fait des choses différentes ... Donc, pour moi, autre chose que cela est une possibilité
Peter.O
@invert gcc veut dire GNU Compiler Collection, mais connaissant GNU et leur étrange obsession des acronymes, cela signifie probablement les deux.
Braden Best
13

"dump data". JCL n'est pas pertinent.

Jürgen A. Erhard
la source
Oui, cela a du sens, fonctionnellement, même si les origines disent autre chose.
inverser
2
Probaby un backronym. secure.wikimedia.org/wikipedia/fr/wiki/Backronym
jsbillings
2
Le vidage de disque est correct. À l'époque, il était normal d'utiliser DD pour sauvegarder une partition de disque dur sur bande. La plupart des autres options étaient liées aux choses que les gens voulaient faire avec les bandes, telles que convertir EBCDIC en ASCII.
Michael Dillon
JCL n'est pas pertinent - cela dépend de la question posée. Une question est l'origine historique, auquel cas JCL est probablement pertinent. Une autre question est le backronym le plus intelligent et le plus approprié que l'on puisse imaginer pour un ddusage moderne . Dans ce cas, cette réponse pourrait être plus appropriée. Je ne suis pas vraiment sûr de ce que le PO demande.
Jw013
4
Cela a beaucoup de sens et est donc presque certainement faux. La lexicographie n'est pas une tâche pour les amateurs.
TRiG
1

Quelqu'un se demandait si la commande dd UNIX (et Linux) avait réellement un lien quelconque avec la commande IBM JCL dd. Je dirais que c'est DID et que cela a une incidence directe sur le choix du nom, et voici la raison.

"Way back" dans les années 80 et avant, AT & T disposait de systèmes d'assistance opérationnels, notamment de systèmes de facturation, fonctionnant sur des équipements autres que leurs propres systèmes de recherche. En particulier, des éléments tels que les rapports de facturation longue distance et d'autres artefacts devant être transférés entre des systèmes informatiques centraux et d'autres systèmes devaient disposer d'un mécanisme.

Sous UNIX, le transfert de fichiers ou de tout "objet" peut être effectué petit à petit, octet à la fois, sans tenir compte du contenu ni de quoi que ce soit d'autre. La commande dd comportait des dispositions permettant de transférer ces bits et ces octets, et d'effectuer des opérations telles que la conversion de jeux de codes entre EBCDIC et ASCII, la copie de sauvegardes sur bande entre divers types de supports, etc.

Aujourd'hui, nous pouvons faire des choses avec cette commande assez ancienne et effectuer des tâches telles que la création de supports de démarrage sur CD, DVD, clés USB de petite taille, et qui sait quelle est la suite, car l'outil peut simplement transférer des informations, quel que soit leur contenu. À cet égard, la commande dd est l’une des commandes les plus utiles de l’arsenal UNIX et Linux.

Brian Masinick
la source