2 dos2unix - Convertit les fichiers textes du format DOS/Mac vers Unix et
6 dos2unix [options] [FICHIER …] [-n FICHIER_ENTRÉE FICHIER_SORTIE …]
7 unix2dos [options] [FICHIER …] [-n FICHIER_ENTRÉE FICHIER_SORTIE …]
10 Le package Dos2unix inclut les utilitaires "dos2unix" et "unix2dos" pour
11 convertir des fichiers textes au format DOS ou Mac vers le format Unix
14 Dans les fichiers textes DOS/Windows, un saut de ligne est une
15 combinaison de deux caractères: un retour de chariot (CR) suivi d'un
16 saut de ligne (LF). Dans les fichiers textes Unix, le saut de ligne est
17 un seul caractère: le saut de ligne (LF). Les fichiers textes Mac, avant
18 Mac OS X, utilisaient le retour chariot (CR) comme seul caractère. De
19 nos jours, Mac OS utilise le même style de saut de ligne que Unix (LF).
21 Outre les sauts de lignes, Dos2unix convertit aussi le codage des
22 fichiers. Quelques codes page DOS peuvent être convertis en Latin-1 sous
23 Unix. L'Unicode des fichiers Windows (UTF-16) peut être converti en
26 Les fichiers binaires sont automatiquement ignorés à moins que la
27 conversion soit forcée.
29 Les fichiers non réguliers tels que les répertoires et les FIFOs sont
30 automatiquement ignorés.
32 Les liens symboliques et leur cible sont, par défaut, inchangés. En
33 option, les liens symboliques peuvent être remplacés ou, au choix, la
34 sortie peut être écrite dans la cible du lien symbolique. Écrire dans la
35 cible d'un lien symbolique n'est pas supporté sous Windows.
37 Dos2unix a été conçu comme dos2unix sous SunOS/Solaris. Il y a une
38 différence importante avec la version originale de SunOS/Solaris. Cette
39 version effectue les conversions en place (ancien mode de fichiers)
40 tandis que la version originale de SunOS/Solaris ne supporte que la
41 conversion par paire (nouveau mode de fichier). Voyez aussi les options
45 -- Traites toutes les options à sa suite comme étant des noms de
46 fichiers. Utilisez cette option si vous voulez convertir des
47 fichiers dont le nom commence par un tiret. Par exemple, pour
48 convertir un fichier nommé « -foo », vous pouvez utiliser cette
53 Ou dans le style des nouveaux fichiers:
55 dos2unix -n -- -foo sortie.txt
58 Convertit uniquement les sauts de lignes. C'est le mode de
59 conversion par défaut.
62 Convertit le jeu de caractères du DOS vers ISO-8859-1. Voyez aussi
63 la section des MODES DE CONVERSION.
66 Utilise le code page 1252 de Windows (Europe de l'ouest).
69 Utilise le code page 437 du DOS (US). C'est le code page par défaut
70 pour les conversions ISO.
73 Utilise le code page 850 du DOS (Europe de l'ouest).
76 Utilise le code page 860 du DOS (portugais).
79 Utilise le code page 863 du DOS (français canadien).
82 Utilise le code page 865 du DOS (nordique).
84 -7 Convertit les caractères 8 bits vers l'espace 7 bits.
87 Conserve la marque d'ordre des octets (BOM). Si le fichier d'entrée
88 a une BOM, elle est écrite dans le fichier de sortie. C'est le
89 comportement par défaut quand les sauts de lignes sont convertis au
90 format DOS. Consultez aussi l'option "-r".
92 -c, --convmode MODE_CONV
93 Change le mode de conversion. MODE_CONV prend l'une des valeurs:
94 *ascii*, *7bit*, *iso*, *mac*. Ascii est la valeur par défaut.
97 Force la conversion de fichiers binaires.
100 Affiche l'aide et s'arrête.
103 La date du fichier de sortie est la même que celle du fichier
107 Affiche la licence du programme.
110 Ajoute des sauts de lignes additionnels.
112 dos2unix: Seuls les sauts de lignes du DOS sont changés en deux
113 sauts de lignes de Unix. En mode Mac, seuls les sauts de lignes Mac
114 sont changés en deux sauts de lignes Unix.
116 unix2dos: Seuls les sauts de lignes Unix sont changés en deux sauts
117 de lignes du DOS. En mode Mac, les sauts de lignes Unix sont
118 remplacés par deux sauts de lignes Mac.
121 Écrit une marque d'ordre des octets (BOM) dans le fichier de sortie.
122 Par défaut une BOM UTF-8 est écrite.
124 Lorsque le fichier d'entrée est en UTF-16 et que l'option "-u" est
125 utilisée, une BOM UTF-16 est écrite.
127 N'utilisez jamais cette option quand l'encodage du fichier de sortie
128 n'est ni UTF-8 ni UTF-16. Consultez également la section UNICODE.
130 -n, --newline FICHIER_ENTRÉE FICHIER_SORTIE …
131 Nouveau mode de fichiers. Convertit le fichier FICHER_ENTRÉE et
132 écrit la sortie dans le fichier FICHIER_SORTIE. Les noms des
133 fichiers doivent être indiqués par paires. Les jokers *ne* doivent
134 *pas* être utilisés ou vous *perdrez* vos fichiers.
136 La personne qui démarre la conversion dans le nouveau mode (pairé)
137 des fichiers sera le propriétaire du fichier converti. Les
138 permissions de lecture/écriture du nouveau fichier seront les
139 permissions du fichier original moins le umask(1) de la personne qui
140 exécute la conversion.
142 -o, --oldfile FICHIER …
143 Ancien mode de fichiers. Convertit le fichier FICHIER et écrit la
144 sortie dedans. Le programme fonctionne dans ce mode par défaut. Les
145 jokers peuvent être utilisés.
147 Dans l'ancien mode (en place) des fichiers, les fichiers convertis
148 ont le même propriétaire, groupe et permissions lecture/écriture que
149 le fichier original. Idem quand le fichier est converti par un
150 utilisateur qui a la permission d'écrire dans le fichier (par
151 exemple, root). La conversion est interrompue si il n'est pas
152 possible de conserver les valeurs d'origine. Le changement de
153 propriétaire pourrait signifier que le propriétaire original n'est
154 plus en mesure de lire le fichier. Le changement de groupe pourrait
155 être un risque pour la sécurité. Le fichier pourrait être rendu
156 accessible en lecture par des personnes à qui il n'est pas destiné.
157 La conservation du propriétaire, du groupe et des permissions de
158 lecture/écriture n'est supportée que sous Unix.
161 Mode silencieux. Supprime les avertissements et les messages. La
162 valeur de sortie est zéro sauf quand de mauvaises options sont
163 utilisées sur la ligne de commande.
166 Supprime la marque d'ordre des octets (BOM). N'écrit pas la BOM dans
167 le fichier de sortie. Ceci est le comportement par défaut lorsque
168 les sauts de lignes sont convertis au format Unix. Consultez aussi
172 Ignore les fichiers binaires (par défaut).
175 Conserve l'encodage UTF-16 original du fichier d'entrée. Le fichier
176 de sortie sera écrit dans le même encodage UTF-16 (petit ou grand
177 boutien) que le fichier d'entrée. Ceci évite la transformation en
178 UTF-8. Une BOM UTF-16 sera écrite en conséquent. Cette option peut
179 être désactivée avec l'option "-ascii".
181 -ul, --assume-utf16le
182 Suppose que le fichier d'entrée est au format UTF-16LE.
184 Quand il y a un indicateur d'ordre des octets dans le fichier
185 d'entrée, l'indicateur a priorité sur cette option.
187 Si vous vous êtes trompé sur le format du fichier d'entrée (par
188 exemple, ce n'était pas un fichier UTF16-LE) et que la conversion
189 réussi, vous obtiendrez un fichier UTF-8 contenant le mauvais texte.
190 Vous pouvez récupérer le fichier original avec iconv(1) en
191 convertissant le fichier de sortie UTF-8 vers du UTF-16LE.
193 La présupposition de l'UTF-16LE fonctionne comme un *mode de
194 conversion*. En utilisant le mode *ascii* par défaut, UTF-16LE n'est
197 -ub, --assume-utf16be
198 Suppose que le fichier d'entrée est au format UTF-16BE.
200 Cette option fonctionne comme l'option "-ul".
203 Affiche des messages verbeux. Des informations supplémentaires sont
204 affichées à propos des marques d'ordre des octets et du nombre de
205 sauts de lignes convertis.
208 Suit les liens symboliques et convertit les cibles.
210 -R, --replace-symlink
211 Remplace les liens symboliques par les fichiers convertis (les
212 fichiers cibles originaux restent inchangés).
215 Ne change pas les liens symboliques ni les cibles (par défaut).
218 Affiche les informations de version puis arrête.
221 En mode normal, les sauts de lignes sont convertis du DOS vers Unix et
222 inversement. Les sauts de lignes Mac ne sont pas convertis.
224 En mode Mac, les sauts de lignes sont convertis du format Mac au format
225 Unix et inversement. Les sauts de lignes DOS ne sont pas changés.
227 Pour fonctionner en mode Mac, utilisez l'option en ligne de commande "-c
228 mac" ou utilisez les commandes "mac2unix" ou "unix2mac".
232 En mode "ascii", seuls les sauts de lignes sont convertis. Ceci est
233 le mode de conversion par défaut.
235 Bien que le nom de ce mode soit ASCII, qui est un standard 7 bits,
236 ce mode travail en réalité sur 8 bits. Utilisez toujours ce mode
237 lorsque vous convertissez des fichiers Unicode UTF-8.
240 Dans ce mode, tous les caractères 8 bits non ASCII (avec des valeurs
241 entre 128 et 255) sont remplacés par une espace 7 bits.
243 iso Les caractères sont convertis entre un jeu de caractères DOS (code
244 page) et le jeu de caractères ISO-8859-1 (Latin-1) de Unix. Les
245 caractères DOS sans équivalent ISO-8859-1, pour lesquels la
246 conversion n'est pas possible, sont remplacés par un point. La même
247 chose est valable pour les caractères ISO-8859-1 sans équivalent
250 Quand seule l'option "-iso" est utilisée, dos2unix essaie de
251 déterminer le code page actif. Quand ce n'est pas possible, dos2unix
252 utilise le code page CP437 par défaut qui est surtout utilisé aux
253 USA. Pour forcer l'utilisation d'un code page spécifique, utilisez
254 les options -437 (US), -850 (Europe de l'ouest), -860 (portugais),
255 -863 (français canadien) ou -865 (nordique). Le code page CP1252 de
256 Windows (Europe de l'ouest) est également supporté avec l'option
257 -1252. Pour d'autres codes pages, utilisez dos2unix avec iconv(1).
258 Iconv supporte une longue liste de codages de caractères.
260 N'utilisez jamais la conversion ISO sur des fichiers textes Unicode.
261 Cela va corrompre les fichiers encodés en UTF-8.
265 Convertir du code page par défaut du DOS au Latin-1 Unix
267 dos2unix -iso -n entrée.txt sortie.txt
269 Convertir du CP850 du DOS au Latin-1 Unix
271 dos2unix -850 -n entrée.txt sortie.txt
273 Convertir du CP1252 de Windows au Latin-1 de Unix
275 dos2unix -1252 -n entrée.txt sortie.txt
277 Convertir le CP1252 de Windows en UTF-8 de Unix (Unicode)
279 iconv -f CP1252 -t UTF-8 entrée.txt | dos2unix > sortie.txt
281 Convertir du Latin-1 de Unix au code page par défaut de DOS
283 unix2dos -iso -n entrée.txt sortie.txt
285 Convertir le Latin-1 de Unix en CP850 du DOS
287 unix2dos -850 -n entrée.txt sortie.txt
289 Convertir le Latin-1 de Unix en CP1252 de Windows
291 unix2dos -1252 -n entrée.txt sortie.txt
293 Convertir le UTF-8 de Unix (Unicode) en CP1252 de Windows
295 unix2dos < entrée.txt | iconv -f UTF-8 -t CP1252 > sortie.txt
297 Consultez aussi <http://czyborra.com/charsets/codepages.html> et
298 <http://czyborra.com/charsets/iso8859.html>.
302 Il existe plusieurs codages Unicode. Sous Unix et Linux, les fichiers
303 sont généralement codés en UTF-8. Sous Windows, les fichiers textes
304 Unicode peuvent être codés en UTF-8, UTF-16 ou UTF-16 gros boutien mais
305 ils sont majoritairement codés au format UTF-16.
308 Les fichiers textes Unicode peuvent avoir des sauts de lignes DOS, Unix
309 ou Mac, tout comme les fichiers textes normaux.
311 Toutes les versions de dos2unix et unix2dos peuvent convertir des
312 fichiers codés en UTF-8 car UTF-8 a été conçu pour être rétro-compatible
315 Dos2unix et unix2dos, avec le support pour l'Unicode UTF-16, peuvent
316 lire les fichiers textes codés sous forme petit boutien ou gros boutien.
317 Pour savoir si dos2unix a été compilé avec le support UTF-16 tapez
320 Les fichiers encodés en UTF-16 sont convertis par défaut en UTF-8. Sous
321 Unix/Linux, le codage des caractères de l'environnement linguistique
322 doit être UTF-8. Utilisez la commande locale(1) pour déterminer le
323 codage des caractères utilisé. Les fichiers textes au format UTF-8 sont
324 bien supportés sous Windows et Unix/Linux.
326 Les codages UTF-16 et UTF-8 sont parfaitement compatibles. Il n'y a pas
327 de pertes lors de la conversion. Lorsqu'une erreur de conversion UTF-16
328 vers UTF-8 survient, par exemple, quand le fichier d'entrée UTF-16
329 contient une erreur, le fichier est ignoré.
331 Quand l'option "-u" est utilisée, le fichier de sortie est écrit dans le
332 même encodage UTF-16 que le fichier d'entrée. L'option "-u" empêche la
335 Dos2unix et unix2dos n'ont pas d'option pour convertir des fichiers
338 Les modes de conversion ISO et 7 bits ne fonctionnent pas sur des
341 Marque d'ordre des octets
342 Les fichiers textes Unicode sous Windows on généralement un indicateur
343 d'ordre des octets (BOM) car de nombreux programmes Windows (y compris
344 Notepad) ajoutent cet indicateur par défaut. Consultez aussi
345 <http://fr.wikipedia.org/wiki/Indicateur_d%27ordre_des_octets>.
347 Sous Unix, les fichiers Unicodes n'ont habituellement pas de BOM. Il est
348 supposé que les fichiers textes sont codés selon le codage de
349 l'environnement linguistique.
351 Dos2unix ne peut détecter que le fichier est au format UTF-16 si le
352 fichier n'a pas de BOM. Quand le fichier UTF-16 n'a pas cet indicateur,
353 dos2unix voit le fichier comme un fichier binaire.
355 Utilisez l'option "-ul" ou "-ub" pour convertir un fichier UTF-16 sans
358 Dos2unix, par défaut, n'écrit pas de BOM dans le fichier de sortie. Avec
359 l'option "-b", Dos2unix écrit une BOM quand le fichier d'entrée a une
362 Unix2dos écrit par défaut une BOM dans le fichier de sortie quand le
363 fichier d'entrée a une BOM. Utilisez l'option "-r" pour supprimer la
366 Dos2unix et unix2dos écrivent toujours une BOM quand l'option "-m" est
370 Convertir de l'UTF-16 Windows (avec BOM) vers l'UTF-8 de Unix
372 dos2unix -n entrée.txt sortie.txt
374 Convertir de l'UTF-16LE de Windows (sans BOM) vers l'UTF-8 de Unix
376 dos2unix -ul -n entrée.txt sortie.txt
378 Convertir de l'UTF-8 de Unix vers l'UTF-8 de Windows avec BOM
380 unix2dos -m -n entrée.txt sortie.txt
382 Convertir de l'UTF-8 de Unix vers l'UTF-16 de Windows
384 unix2dos < entrée.txt | iconv -f UTF-8 -t UTF-16 > sortie.txt
387 Lire l'entrée depuis « stdin » et écrire la sortie vers « stdout »
392 Convertir et remplacer a.txt. Convertir et remplace b.txt.
395 dos2unix -o a.txt b.txt
397 Convertir et remplacer a.txt en mode de conversion ascii.
401 Convertir et remplacer a.txt en mode de conversion ascii. Convertir et
402 remplacer b.txt en mode de conversion 7 bits.
404 dos2unix a.txt -c 7bit b.txt
405 dos2unix -c ascii a.txt -c 7bit b.txt
406 dos2unix -ascii a.txt -7 b.txt
408 Convertir a.txt depuis le format Mac vers le format Unix.
410 dos2unix -c mac a.txt
413 Convertir a.txt du format Unix au format Mac.
415 unix2dos -c mac a.txt
418 Convertir et remplacer a.txt tout en conservant la date originale.
423 Convertir a.txt et écrire dans e.txt.
425 dos2unix -n a.txt e.txt
427 Convertir a.txt et écrire dans e.txt. La date de e.txt est la même que
430 dos2unix -k -n a.txt e.txt
432 Convertir et remplacer a.txt. Convertir b.txt et écrire dans e.txt.
434 dos2unix a.txt -n b.txt e.txt
435 dos2unix -o a.txt -n b.txt e.txt
437 Convertir c.txt et écrire dans e.txt. Convertir et remplacer a.txt.
438 Convertir et remplacer b.txt. Convertir d.txt et écrire dans f.txt.
440 dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
442 CONVERSIONS RÉCURSIVES
443 Utilisez dos2unix avec les commandes find(1) et xargs(1) pour convertir
444 récursivement des fichiers textes dans une arborescence de répertoires.
445 Par exemple, pour convertir tous les fichiers .txt dans les répertoires
446 sous le répertoire courant, tapez:
448 find . -name *.txt |xargs dos2unix
450 PARAMÈTRES LINGUISTIQUES
452 La langue principale est sélectionnée par la variable
453 d'environnement LANG. La variable LANG est composée de plusieurs
454 parties. La première partie est le code de la langue en minuscules.
455 La deuxième partie est le code du pays en majuscules précédé d'un
456 souligné. Elle est facultative. Il y a aussi une troisième partie
457 facultative qui est le codage des caractères précédé par un point.
458 Voici quelques exemples pour un shell au standard POSIX:
460 export LANG=fr Français
461 export LANG=fr_CA Français, Canada
462 export LANG=fr_BE Français, Belgique
463 export LANG=es_ES Espagnol, Espagne
464 export LANG=es_MX Espagnol, Mexique
465 export LANG=en_US.iso88591 Anglais, USA, codage Latin-1
466 export LANG=en_GB.UTF-8 Anglais, UK, codage UTF-8
468 La liste complète des codes de langues et de pays est dans le manuel
470 <http://www.gnu.org/software/gettext/manual/gettext.html#Language-Co
473 Sur les systèmes Unix, vous pouvez utiliser la commande locale(1)
474 pour obtenir des informations sur l'environnement linguistique.
477 Avec la variable d'environnement LANGUAGE, vous pouvez spécifier une
478 liste de langues prioritaires séparées par des deux-points. Dos2unix
479 fait passer LANGUAGE avant LANG. Par exemple, pour utiliser le
480 français avant l'anglais: "LANGUAGE=fr:en". Vous devez d'abord
481 activer l'environnement linguistique en assignant une valeur autre
482 que « C » à LANG (ou LC_ALL). Ensuite, vous pourrez utiliser la
483 liste de priorité avec la variable LANGUAGE. Voyez également le
485 <http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAG
488 Si vous sélectionnez une langue qui n'est pas disponible, vous
489 obtiendrez des messages en anglais standard.
492 Grâce à la variable d'environnement DOS2UNIX_LOCALEDIR, la variable
493 LOCALEDIR compilée dans l'application peut être remplacée. LOCALEDIR
494 est utilisée pour trouver les fichiers de langue. La valeur par
495 défaut de GNU est "/usr/local/share/locale". L'option --version
496 affiche la valeur de LOCALEDIR utilisée.
498 Exemple (shell POSIX):
500 export DOS2UNIX_LOCALEDIR=$HOME/share/locale
503 Zéro est retourné en cas de succès. Si une erreur système se produit, la
504 dernière erreur système est retournée. Pour les autres erreurs, 1 est
507 La valeur de sortie est toujours zéro en mode silencieux sauf quand de
508 mauvaises options sont utilisées sur la ligne de commande.
511 <http://fr.wikipedia.org/wiki/Fichier_texte>
513 <http://fr.wikipedia.org/wiki/Retour_chariot>
515 <http://fr.wikipedia.org/wiki/Fin_de_ligne>
517 <http://fr.wikipedia.org/wiki/Unicode>
520 Benjamin Lin - <blin@socs.uts.edu.au> Bernd Johannes Wuebben (mode
521 mac2unix) - <wuebben@kde.org>, Christian Wurll (ajout de saut de ligne
522 supplémentaire) - <wurll@ira.uka.de>, Erwin Waterlander -
523 <waterlan@xs4all.nl> (Mainteneur)
525 Page du projet: <http://waterlan.home.xs4all.nl/dos2unix.html>
527 Page SourceForge: <http://sourceforge.net/projects/dos2unix/>
530 file(1) find(1) iconv(1) locale(1) xargs(1)