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.
86 -c, --convmode MODE_CONV
87 Change le mode de conversion. MODE_CONV prend l'une des valeurs:
88 *ascii*, *7bit*, *iso*, *mac*. Ascii est la valeur par défaut.
91 Force la conversion de fichiers binaires.
94 Affiche l'aide et s'arrête.
97 La date du fichier de sortie est la même que celle du fichier
101 Affiche la licence du programme.
104 Ajoute des sauts de lignes additionnels.
106 dos2unix: Seuls les sauts de lignes du DOS sont changés en deux
107 sauts de lignes de Unix. En mode Mac, seuls les sauts de lignes Mac
108 sont changés en deux sauts de lignes Unix.
110 unix2dos: Seuls les sauts de lignes Unix sont changés en deux sauts
111 de lignes du DOS. En mode Mac, les sauts de lignes Unix sont
112 remplacés par deux sauts de lignes Mac.
115 Écrit un indicateur UTF-8 d'ordre des octets dans le fichier de
116 sortie. N'utilisez jamais cette option quand le codage de sortie
117 n'est pas UTF-8. Consultez également la section UNICODE.
119 -n, --newline FICHIER_ENTRÉE FICHIER_SORTIE …
120 Nouveau mode de fichiers. Convertit le fichier FICHER_ENTRÉE et
121 écrit la sortie dans le fichier FICHIER_SORTIE. Les noms des
122 fichiers doivent être indiqués par paires. Les jokers *ne* doivent
123 *pas* être utilisés ou vous *perdrez* vos fichiers.
125 La personne qui démarre la conversion dans le nouveau mode (pairé)
126 des fichiers sera le propriétaire du fichier converti. Les
127 permissions de lecture/écriture du nouveau fichier seront les
128 permissions du fichier original moins le umask(1) de la personne qui
129 exécute la conversion.
131 -o, --oldfile FICHIER …
132 Ancien mode de fichiers. Convertit le fichier FICHIER et écrit la
133 sortie dedans. Le programme fonctionne dans ce mode par défaut. Les
134 jokers peuvent être utilisés.
136 Dans l'ancien mode (en place) des fichiers, les fichiers convertis
137 ont le même propriétaire, groupe et permissions lecture/écriture que
138 le fichier original. Idem quand le fichier est converti par un
139 utilisateur qui a la permission d'écrire dans le fichier (par
140 exemple, root). La conversion est interrompue si il n'est pas
141 possible de conserver les valeurs d'origine. Le changement de
142 propriétaire pourrait signifier que le propriétaire original n'est
143 plus en mesure de lire le fichier. Le changement de groupe pourrait
144 être un risque pour la sécurité. Le fichier pourrait être rendu
145 accessible en lecture par des personnes à qui il n'est pas destiné.
146 La conservation du propriétaire, du groupe et des permissions de
147 lecture/écriture n'est supportée que sous Unix.
150 Mode silencieux. Supprime les avertissements et les messages. La
151 valeur de sortie est zéro sauf quand de mauvaises options sont
152 utilisées sur la ligne de commande.
155 Ignore les fichiers binaires (par défaut).
157 -ul, --assume-utf16le
158 Suppose que le fichier d'entrée est au format UTF-16LE.
160 Quand il y a un indicateur d'ordre des octets dans le fichier
161 d'entrée, l'indicateur a priorité sur cette option.
163 Si vous vous êtes trompé sur le format du fichier d'entrée (par
164 exemple, ce n'était pas un fichier UTF16-LE) et que la conversion
165 réussi, vous obtiendrez un fichier UTF-8 contenant le mauvais texte.
166 Vous pouvez récupérer le fichier original avec iconv(1) en
167 convertissant le fichier de sortie UTF-8 vers du UTF-16LE.
169 La présupposition de l'UTF-16LE fonctionne comme un *mode de
170 conversion*. En utilisant le mode *ascii* par défaut, UTF-16LE n'est
173 -ub, --assume-utf16be
174 Suppose que le fichier d'entrée est au format UTF-16BE.
176 Cette option fonctionne comme l'option "-ul".
179 Suit les liens symboliques et convertit les cibles.
181 -R, --replace-symlink
182 Remplace les liens symboliques par les fichiers convertis (les
183 fichiers cibles originaux restent inchangés).
186 Ne change pas les liens symboliques ni les cibles (par défaut).
189 Affiche les informations de version puis arrête.
192 En mode normal, les sauts de lignes sont convertis du DOS vers Unix et
193 inversement. Les sauts de lignes Mac ne sont pas convertis.
195 En mode Mac, les sauts de lignes sont convertis du format Mac au format
196 Unix et inversement. Les sauts de lignes DOS ne sont pas changés.
198 Pour fonctionner en mode Mac, utilisez l'option en ligne de commande "-c
199 mac" ou utilisez les commandes "mac2unix" ou "unix2mac".
203 En mode "ascii", seuls les sauts de lignes sont convertis. Ceci est
204 le mode de conversion par défaut.
206 Bien que le nom de ce mode soit ASCII, qui est un standard 7 bits,
207 ce mode travail en réalité sur 8 bits. Utilisez toujours ce mode
208 lorsque vous convertissez des fichiers Unicode UTF-8.
211 Dans ce mode, tous les caractères 8 bits non ASCII (avec des valeurs
212 entre 128 et 255) sont remplacés par une espace 7 bits.
214 iso Les caractères sont convertis entre un jeu de caractères DOS (code
215 page) et le jeu de caractères ISO-8859-1 (Latin-1) de Unix. Les
216 caractères DOS sans équivalent ISO-8859-1, pour lesquels la
217 conversion n'est pas possible, sont remplacés par un point. La même
218 chose est valable pour les caractères ISO-8859-1 sans équivalent
221 Quand seule l'option "-iso" est utilisée, dos2unix essaie de
222 déterminer le code page actif. Quand ce n'est pas possible, dos2unix
223 utilise le code page CP437 par défaut qui est surtout utilisé aux
224 USA. Pour forcer l'utilisation d'un code page spécifique, utilisez
225 les options -437 (US), -850 (Europe de l'ouest), -860 (portugais),
226 -863 (français canadien) ou -865 (nordique). Le code page CP1252 de
227 Windows (Europe de l'ouest) est également supporté avec l'option
228 -1252. Pour d'autres codes pages, utilisez dos2unix avec iconv(1).
229 Iconv supporte une longue liste de codages de caractères.
231 N'utilisez jamais la conversion ISO sur des fichiers textes Unicode.
232 Cela va corrompre les fichiers encodés en UTF-8.
236 Convertir du code page par défaut du DOS au Latin-1 Unix
238 dos2unix -iso -n entrée.txt sortie.txt
240 Convertir du CP850 du DOS au Latin-1 Unix
242 dos2unix -850 -n entrée.txt sortie.txt
244 Convertir du CP1252 de Windows au Latin-1 de Unix
246 dos2unix -1252 -n entrée.txt sortie.txt
248 Convertir le CP1252 de Windows en UTF-8 de Unix (Unicode)
250 iconv -f CP1252 -t UTF-8 entrée.txt | dos2unix > sortie.txt
252 Convertir du Latin-1 de Unix au code page par défaut de DOS
254 unix2dos -iso -n entrée.txt sortie.txt
256 Convertir le Latin-1 de Unix en CP850 du DOS
258 unix2dos -850 -n entrée.txt sortie.txt
260 Convertir le Latin-1 de Unix en CP1252 de Windows
262 unix2dos -1252 -n entrée.txt sortie.txt
264 Convertir le UTF-8 de Unix (Unicode) en CP1252 de Windows
266 unix2dos < entrée.txt | iconv -f UTF-8 -t CP1252 > sortie.txt
268 Consultez aussi <http://czyborra.com/charsets/codepages.html> et
269 <http://czyborra.com/charsets/iso8859.html>.
273 Il existe plusieurs codages Unicode. Sous Unix et Linux, les fichiers
274 sont généralement codés en UTF-8. Sous Windows, les fichiers textes
275 Unicode peuvent être codés en UTF-8, UTF-16 ou UTF-16 gros boutien mais
276 ils sont majoritairement codés au format UTF-16.
279 Les fichiers textes Unicode peuvent avoir des sauts de lignes DOS, Unix
280 ou Mac, tout comme les fichiers textes normaux.
282 Toutes les versions de dos2unix et unix2dos peuvent convertir des
283 fichiers codés en UTF-8 car UTF-8 a été conçu pour être rétro-compatible
286 Dos2unix et unix2dos, avec le support pour l'Unicode UTF-16, peuvent
287 lire les fichiers textes codés sous forme petit boutien ou gros boutien.
288 Pour savoir si dos2unix a été compilé avec le support UTF-16 tapez
291 Les versions Windows de dos2unix et unix2dos convertissent toujours les
292 fichiers UTF-16 en fichiers UTF-8. Les versions Unix de
293 dos2unix/unix2dos convertissent les fichiers UTF-16 vers le codage de
294 l'environnement linguistique quand il est en UTF-8. Utilisez la commande
295 locale(1) pour connaître le codage de l'environnement linguistique en
298 Puisque les fichiers textes au format UTF-8 sont bien supportés sous
299 Windows et Unix, dos2unix et unix2dos n'ont pas d'option pour écrire des
300 fichiers UTF-16. Tous les caractères UTF-16 peuvent être codés en UTF-8.
301 La conversion de UTF-16 vers UTF-8 est sans perte. Les fichiers UTF-16
302 seront ignorés sous Unix quand l'encodage des caractères de
303 l'environnement linguistique n'est pas UTF-8 pour éviter la perte
304 accidentelle du texte. Quand une conversion de UTF-16 vers UTF-8 échoue,
305 par exemple parce que le fichier d'entrée UTF-16 contient des erreurs,
306 le fichier est ignoré.
308 Les modes de conversion ISO et 7 bits ne fonctionnent pas sur des
311 Marque d'ordre des octets
312 Les fichiers textes Unicode sous Windows on généralement un indicateur
313 d'ordre des octets (BOM) car de nombreux programmes Windows (y compris
314 Notepad) ajoutent cet indicateur par défaut. Consultez aussi
315 <http://fr.wikipedia.org/wiki/Indicateur_d%27ordre_des_octets>.
317 Sous Unix, les fichiers Unicodes n'ont habituellement pas de BOM. Il est
318 supposé que les fichiers textes sont codés selon le codage de
319 l'environnement linguistique.
321 Dos2unix ne peut détecter que le fichier est au format UTF-16 si le
322 fichier n'a pas de BOM. Quand le fichier UTF-16 n'a pas cet indicateur,
323 dos2unix voit le fichier comme un fichier binaire.
325 Utilisez l'option "-ul" ou "-ub" pour convertir un fichier UTF-16 sans
328 Dos2unix n'écrit jamais de BOM dans le fichier de sortie à moins que
329 vous utilisiez l'option "-m".
331 Unix2dos écrit la BOM dans le fichier de sortie quand le fichier
332 d'entrée a une BOM ou que l'option "-m" est utilisée.
335 Convertir de l'UTF-16 Windows (avec une BOM) vers l'UTF-8 de Unix
337 dos2unix -n entrée.txt sortie.txt
339 Convertir de l'UTF-16LE de Windows (sans BOM) vers l'UTF-8 de Unix
341 dos2unix -ul -n entrée.txt sortie.txt
343 Convertir de l'UTF-8 de Unix vers l'UTF-8 de Windows sans BOM
345 unix2dos -m -n entrée.txt sortie.txt
347 Convertir de l'UTF-8 de Unix vers l'UTF-16 de Windows
349 unix2dos < entrée.txt | iconv -f UTF-8 -t UTF-16 > sortie.txt
352 Lire l'entrée depuis « stdin » et écrire la sortie vers « stdout »
357 Convertir et remplacer a.txt. Convertir et remplace b.txt.
360 dos2unix -o a.txt b.txt
362 Convertir et remplacer a.txt en mode de conversion ascii.
366 Convertir et remplacer a.txt en mode de conversion ascii. Convertir et
367 remplacer b.txt en mode de conversion 7 bits.
369 dos2unix a.txt -c 7bit b.txt
370 dos2unix -c ascii a.txt -c 7bit b.txt
371 dos2unix -ascii a.txt -7 b.txt
373 Convertir a.txt depuis le format Mac vers le format Unix.
375 dos2unix -c mac a.txt
378 Convertir a.txt du format Unix au format Mac.
380 unix2dos -c mac a.txt
383 Convertir et remplacer a.txt tout en conservant la date originale.
388 Convertir a.txt et écrire dans e.txt.
390 dos2unix -n a.txt e.txt
392 Convertir a.txt et écrire dans e.txt. La date de e.txt est la même que
395 dos2unix -k -n a.txt e.txt
397 Convertir et remplacer a.txt. Convertir b.txt et écrire dans e.txt.
399 dos2unix a.txt -n b.txt e.txt
400 dos2unix -o a.txt -n b.txt e.txt
402 Convertir c.txt et écrire dans e.txt. Convertir et remplacer a.txt.
403 Convertir et remplacer b.txt. Convertir d.txt et écrire dans f.txt.
405 dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
407 CONVERSIONS RÉCURSIVES
408 Utilisez dos2unix avec les commandes find(1) et xargs(1) pour convertir
409 récursivement des fichiers textes dans une arborescence de répertoires.
410 Par exemple, pour convertir tous les fichiers .txt dans les répertoires
411 sous le répertoire courant, tapez:
413 find . -name *.txt |xargs dos2unix
415 PARAMÈTRES LINGUISTIQUES
417 La langue principale est sélectionnée par la variable
418 d'environnement LANG. La variable LANG est composée de plusieurs
419 parties. La première partie est le code de la langue en minuscules.
420 La deuxième partie est le code du pays en majuscules précédé d'un
421 souligné. Elle est facultative. Il y a aussi une troisième partie
422 facultative qui est le codage des caractères précédé par un point.
423 Voici quelques exemples pour un shell au standard POSIX:
425 export LANG=fr Français
426 export LANG=fr_CA Français, Canada
427 export LANG=fr_BE Français, Belgique
428 export LANG=es_ES Espagnol, Espagne
429 export LANG=es_MX Espagnol, Mexique
430 export LANG=en_US.iso88591 Anglais, USA, codage Latin-1
431 export LANG=en_GB.UTF-8 Anglais, UK, codage UTF-8
433 La liste complète des codes de langues et de pays est dans le manuel
435 <http://www.gnu.org/software/gettext/manual/gettext.html#Language-Co
438 Sur les systèmes Unix, vous pouvez utiliser la commande locale(1)
439 pour obtenir des informations sur l'environnement linguistique.
442 Avec la variable d'environnement LANGUAGE, vous pouvez spécifier une
443 liste de langues prioritaires séparées par des deux-points. Dos2unix
444 fait passer LANGUAGE avant LANG. Par exemple, pour utiliser le
445 français avant l'anglais: "LANGUAGE=fr:en". Vous devez d'abord
446 activer l'environnement linguistique en assignant une valeur autre
447 que « C » à LANG (ou LC_ALL). Ensuite, vous pourrez utiliser la
448 liste de priorité avec la variable LANGUAGE. Voyez également le
450 <http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAG
453 Si vous sélectionnez une langue qui n'est pas disponible, vous
454 obtiendrez des messages en anglais standard.
457 Grâce à la variable d'environnement DOS2UNIX_LOCALEDIR, la variable
458 LOCALEDIR compilée dans l'application peut être remplacée. LOCALEDIR
459 est utilisée pour trouver les fichiers de langue. La valeur par
460 défaut de GNU est "/usr/local/share/locale". L'option --version
461 affiche la valeur de LOCALEDIR utilisée.
463 Exemple (shell POSIX):
465 export DOS2UNIX_LOCALEDIR=$HOME/share/locale
468 Zéro est retourné en cas de succès. Si une erreur système se produit, la
469 dernière erreur système est retournée. Pour les autres erreurs, 1 est
472 La valeur de sortie est toujours zéro en mode silencieux sauf quand de
473 mauvaises options sont utilisées sur la ligne de commande.
476 <http://fr.wikipedia.org/wiki/Fichier_texte>
478 <http://fr.wikipedia.org/wiki/Retour_chariot>
480 <http://fr.wikipedia.org/wiki/Fin_de_ligne>
482 <http://fr.wikipedia.org/wiki/Unicode>
485 Benjamin Lin - <blin@socs.uts.edu.au> Bernd Johannes Wuebben (mode
486 mac2unix) - <wuebben@kde.org>, Christian Wurll (ajout de saut de ligne
487 supplémentaire) - <wurll@ira.uka.de>, Erwin Waterlander -
488 <waterlan@xs4all.nl> (Mainteneur)
490 Page du projet: <http://waterlan.home.xs4all.nl/dos2unix.html>
492 Page SourceForge: <http://sourceforge.net/projects/dos2unix/>
494 Freecode: <http://freecode.com/projects/dos2unix>
497 file(1) find(1) iconv(1) locale(1) xargs(1)