2 dos2unix - Convertidor de ficheros de texto de formato DOS/Mac a Unix y
6 dos2unix [parámetros] [FICHERO ...] [-n FICHERO_DE_ENTRADA FICHERO_DE_SALIDA ...]
7 unix2dos [parámetros] [FICHERO ...] [-n FICHERO_DE_ENTRADA FICHERO_DE_SALIDA ...]
10 El paquete Dos2unix incluye las utilerías "dos2unix" y "unix2dos" para
11 convertir ficheros de texto plano en formato DOS o Mac a formato Unix y
14 En ficheros de texto DOS/Windows, un salto de línea, también conocido
15 como nueva línea, es una combinación de dos caracteres: un retorno de
16 carro (CR) seguido por un salto de línea (LF). En ficheros de texto
17 Unix, un salto de línea es solamente un carácter: el salto de línea
18 (LF). En ficheros de texto Mac, antes de Mac OS X, un salto de línea era
19 sólo un carácter retorno de carro (CR). Actualmente, Mac OS usa el
20 estilo Unix de saltos de línea (LF).
22 Además de saltos de línea, Dos2unix puede también convertir la
23 codificación de ficheros. Unas cuantas páginas de códigos DOS pueden ser
24 convertidas a Unix Latin-1. Y ficheros Unicode de Windows (UTF-16)
25 pueden ser convertidos a ficheros Unicode de Unix (UTF-8).
27 Los ficheros binarios son ignorados automáticamente, a menos que se
30 Los ficheros no regulares, tales como directorios y FIFO, son ignorados
33 Los enlaces simbólicos y sus destinos no son modificados por defecto.
34 Los enlaces simbólicos pueden opcionalmente ser reemplazados, o la
35 salida puede ser escrita al destino simbólico del enlace. En Windows no
36 está soportada la escritura a enlaces simbólicos.
38 Dos2unix fue modelado después de dos2unix bajo SunOS/Solaris. Hay una
39 importante diferencia respecto a la versión original SunOS/Solaris. Esta
40 versión hace, por defecto, la conversión en el mismo fichero (modo de
41 fichero antiguo), mientras que la versión original de SunOS/Solaris sólo
42 es compatible con la conversión en fichero emparejado (modo de fichero
43 nuevo). Véanse las opciones "-o" y "-n".
46 -- Todos los parámetros siguientes son tratados como nombres de
47 fichero. Use este parámetro si desea convertir ficheros cuyos
48 nombres inician con un guión. Por ejemplo para convertir un fichero
49 llamado "-foo", use este comando:
53 O en modo de fichero nuevo:
55 dos2unix -n -- -foo out.txt
58 Sólo convierte los salto de línea. Éste es el modo de conversión por
62 Conversión entre el conjunto de caracteres DOS e ISO-8859-1. Véase
63 también la sección MODOS DE CONVERSIÓN.
66 Usa la página de códigos Windows 1252 (Europa Occidental).
69 Usa la página de códigos DOS 437 (EE. UU.). Está es la página de
70 códigos usada por defecto para conversión ISO.
73 Usa la página de códigos DOS 850 (Europa Occidental).
76 Usa la página de códigos DOS 860 (Portugués).
79 Usa la página de códigos DOS 863 (Francocanadiense).
82 Usa la página de códigos DOS 865 (Nórdico).
84 -7 Convierte caracteres de 8 bits al espacio de 7 bits.
87 Mantiene la Marca de Orden de Byte (BOM). Cuando el fichero de
88 entrada tiene BOM, escribe BOM en el fichero de salida. Este es el
89 comportamiento por defecto en la conversión a saltos de línea DOS.
90 Vea también la opción "-r".
92 -c, --convmode CONVMODE
93 Establece el modo de conversión, Donde CONVMODE puede ser: *ascii*,
94 *7bit*, *iso*, *mac* siendo ascii el valor por defecto.
97 Fuerza la conversión de ficheros binarios.
100 Despiega la ayuda y termina el programa.
102 -i[FLAGS], --info[=FLAGS] FILE ...
103 Display file information. No conversion is done.
105 The following information is printed, in this order: number of DOS
106 line breaks, number of Unix line breaks, number of Mac line breaks,
107 byte order mark, text or binary, file name.
111 6 0 0 no_bom text dos.txt
112 0 6 0 no_bom text unix.txt
113 0 0 6 no_bom text mac.txt
114 6 6 6 no_bom text mixed.txt
115 50 0 0 UTF-16LE text utf16le.txt
116 0 50 0 no_bom text utf8unix.txt
117 50 0 0 UTF-8 text utf8dos.txt
118 2 418 219 no_bom binary dos2unix.exe
120 Optionally extra flags can be set to change the output. One or more
123 d Print number of DOS line breaks.
125 u Print number of Unix line breaks.
127 m Print number of Mac line breaks.
129 b Print the byte order mark.
131 t Print if file is text or binary.
133 c Print only the files that would be converted.
135 With the "c" flag dos2unix will print only the files that
136 contain DOS line breaks, unix2dos will print only file names
137 that have Unix line breaks.
141 Show information for all *.txt files:
145 Show only the number of DOS line breaks and Unix line breaks:
149 Show only the byte order mark:
151 dos2unix --info=b *.txt
153 List the files that have DOS line breaks.
157 List the files that have Unix line breaks.
162 Mantiene la fecha del fichero de salida igual a la del fichero de
166 Muestra la licencia del programa.
169 Añade salto de línea adicional.
171 dos2unix: Sólo los saltos de línea DOS son cambiados por dos saltos
172 de línea Unix. En modo Mac sólo los saltos de línea Mac son
173 cambiados por dos saltos de línea Unix.
175 unix2dos: Sólo los saltos de línea Unix son cambiados por dos saltos
176 de línea DOS. En modo Mac los saltos de línea Unix son cambiados por
177 dos saltos de línea Mac.
180 Write a Byte Order Mark (BOM) in the output file. By default an
181 UTF-8 BOM is written.
183 When the input file is UTF-16, and the option "-u" is used, an
184 UTF-16 BOM will be written.
186 Never use this option when the output encoding is other than UTF-8
187 or UTF-16. See also section UNICODE.
189 -n, --newfile FICHERO_DE_ENTRADA FICHERO_DE_SALIDA ...
190 Modo de fichero nuevo. Convierte el fichero FICHERO_DE_ENTRADA y
191 escribe la salida al fichero FICHERO_DE_SALIDA. Los nombres de
192 fichero deben ser dados en pares y los comodines *no* deben ser
193 usados o *perderá* sus ficheros.
195 La persona que inicia la conversión en el modo de fichero nuevo
196 (pareado) será el propietario del fichero convertido. Los permisos
197 de lectura/escritura del fichero nuevo serán los permisos del
198 fichero original menos la umask(1) de la persona que ejecute la
201 -o, --oldfile FICHERO ...
202 Modo de fichero viejo. Convierte el fichero FICHERO y lo sobrescribe
203 con la salida. El programa por defecto se ejecuta en este modo. Sí
204 se pueden emplear comodines.
206 En modo de fichero antiguo (in situ), el fichero convertido obtiene
207 el mismo propietario, grupo, y permisos de lectura/escritura que el
208 fichero original. Lo mismo aplica cuando el fichero es convertido
209 por otro usuario quien tiene permiso de lectura en el fichero (p.e.
210 usuario root). La conversión será abortada cuando no sea posible
211 preservar los valores originales. Cambiar el propietario implicaría
212 que el propietario original ya no podrá leer el fichero. Cambiar el
213 grupo podría ser un riesgo de seguridad, ya que el fichero podría
214 ser accesible a personas inadecuadas. La preservación del
215 propietario, grupo, y permisos de lectura/escritura sólo está
219 Modo silencioso. Suprime todas las advertencias y mensajes. El valor
220 retornado es cero. Excepto cuando se emplean parámetros incorrectos.
223 Elimina la Marca de Orden de Byte (BOM). No escribe el BOM en el
224 fichero de salida. Este es el comportamiento por defecto al
225 convertir a saltos de línea Unix. Vea también la opción "-b".
228 Ignora los ficheros binarios (por defecto).
231 Keep the original UTF-16 encoding of the input file. The output file
232 will be written in the same UTF-16 encoding, little or big endian,
233 as the input file. This prevents transformation to UTF-8. An UTF-16
234 BOM will be written accordingly. This option can be disabled with
237 -ul, --assume-utf16le
238 Supone que el formato de fichero de entrada es UTF-16LE.
240 Cuando existe una marca de orden de bytes (BOM) en el fichero de
241 entrada, la BOM tiene prioridad sobre esta opción.
243 Cuando se hace un supuesto incorrecto (el fichero de entrada no
244 estaba en formato UTF-16LE) y la conversión tiene éxito, obtendrá un
245 fichero UTF-8 de salida con el texto erróneo. La conversión errónea
246 puede ser deshecha con iconv(1) mediante convertir el fichero UTF-8
247 de salida de vuelta a UTF-16LE. Esto restaurará el fichero original.
249 El supuesto de UTF-16LE funciona como un *modo de conversión*. Al
250 cambiar al modo por defecto *ascii* el supuesto UTF-16LE es
253 -ub, --assume-utf16be
254 Supone que el formato del fichero de entrada es UTF-16BE.
256 Esta opción funciona igual que la opción "-ul".
259 Display verbose messages. Extra information is displayed about Byte
260 Order Marks and the amount of converted line breaks.
263 Sigue los enlaces simbólicos y convierte los destinos.
265 -R, --replace-symlink
266 Reemplaza los enlaces simbólicos con los ficheros convertidos (los
267 ficheros destino originales no se alteran).
270 No altera los enlaces simbólicos ni sus destinos (por defecto).
273 Despiega la información de la versión y termina el programa.
276 En modo normal los saltos de línea son convertidos de DOS a Unix y
277 viceversa. Los saltos de línea Mac no son convertidos.
279 En modo Mac los saltos de línea son convertidos de Mac a Unix y
280 viceversa. Los saltos de línea DOS no son modificados.
282 Para ejecutar en modo Mac use el modificador "-c mac" o use los comandos
283 "mac2unix" o "unix2mac".
287 En modo "ascii" sólo los saltos de línea son convertidos. Éste es el
288 modo de conversión por defecto.
290 Aunque el nombre de este modo es ASCII, el cual es un estándar de 7
291 bits, éste emplea 8 bits. Siempre use este modo cuando convierta
292 ficheros en Unicode UTF-8.
295 En este modo todos los caracteres no ASCII de 8 bits (con valores de
296 128 a 255) son convertidos al espacio de 7 bits.
298 iso Los caracteres son convertidos entre un conjunto de caracteres DOS
299 (página de códigos) y el conjunto de caracteres ISO-8859-1 (Latín-1)
300 de Unix. Los caracteres DOS sin equivalente ISO-8859-1, para los
301 cuales la conversión es imposible, son convertidos en un punto. Lo
302 mismo se aplica para caracteres ISO-8859-1 sin contraparte DOS.
304 Cuando sólo se emplea el parámetro "-iso", dos2unix intentará
305 determinar la página de códigos activa. Cuando esto no sea posible,
306 dos2unix utilizará la página de códigos 437 por defecto, la cual es
307 empleada principalmente en EE. UU. Para forzar una página de códigos
308 específica emplee los parámetros -437 (EE. UU.), -850 (Europa
309 Occidental), -860 (Portugués), -863 (Francocanadiense), o -865
310 (Nórdico). La página de códigos Windows 1252 (Europa Occidental)
311 también está soportada con el parámetro -1252. Para acceder a otras
312 páginas de códigos use dos2unix en combinación con iconv(1). Iconv
313 puede convertir entre una larga lista de codificaciones de
316 No use nunca la conversión ISO en ficheros de texto Unicode. Esto
317 corrompería los ficheros codificados como UTF-8.
321 Convierte de la página de códigos por defecto de DOS a Latín-1 de
324 dos2unix -iso -n in.txt out.txt
326 Convierte de DOS 850 a Unix Latín-1.
328 dos2unix -850 -n in.txt out.txt
330 Convierte de Windows 1252 a Unix Latín-1.
332 dos2unix -1252 -n in.txt out.txt
334 Convierte de Windows 1252 a Unix UTF-8 (Unicode).
336 iconv -f CP1252 -t UTF-8 in.txt | dos2unix > out.txt
338 Convierte de Latín-1 en Unix a la página de códigos por defecto de
341 unix2dos -iso -n in.txt out.txt
343 Convierte de Unix Latín-1 a DOS 850.
345 unix2dos -850 -n in.txt out.txt
347 Convierte de Unix Latín-1 a Windows 1252.
349 unix2dos -1252 -n in.txt out.txt
351 Convierte de Unix UTF-8 (Unicode) a Windows 1252.
353 unix2dos < in.txt | iconv -f UTF-8 -t CP1252 > out.txt
355 Véase también <http://czyborra.com/charsets/codepages.html> y
356 <http://czyborra.com/charsets/iso8859.html>.
360 Existen diferentes codificaciones Unicode. En Unix y Linux los ficheros
361 Unicode son codificados comúnmente como UTF-8. En Windows los ficheros
362 de texto Unicode pueden estar codificados en UTF-8, UTF-16, o UTF-16 big
363 endian, pero con más frecuencia son codificados en formato UTF-16.
366 Los ficheros de texto Unicode pueden tener saltos de línea DOS, Unix o
367 Mac, como cualquier fichero de texto.
369 Todas las versiones de dos2unix y unix2dos pueden convertir ficheros
370 codificados como UTF-8, debido a que UTF-8 fue diseñado para
371 retro-compatibilidad con ASCII.
373 Dos2unix y unix2dos con soporte Unicode UTF-16, pueden leer ficheros de
374 texto codificados como UTF-16 little y big endian. Para ver si dos2unix
375 fue compilado con soporte UTF-16 escriba "dos2unix -V".
377 UTF-16 encoded files are by default converted to UTF-8. On Unix/Linux it
378 is required that the locale character encoding is set to UTF-8. Use the
379 locale(1) command to find out what the locale character encoding is.
380 UTF-8 formatted text files are well supported on both Windows and
383 UTF-16 and UTF-8 encoding are fully compatible, there will no text be
384 lost in the conversion. When an UTF-16 to UTF-8 conversion error occurs,
385 for instance when the UTF-16 input file contains an error, the file will
388 When option "-u" is used, the output file will be written in the same
389 UTF-16 encoding as the input file. Option "-u" prevents conversion to
392 Dos2unix and unix2dos have no option to convert UTF-8 files to UTF-16.
394 La conversión en modos ISO y 7-bit no funciona en ficheros UTF-16.
396 Marca de orden de bytes
397 En Windows los ficheros de texto Unicode típicamente tienen una marca de
398 orden de bytes (BOM), debido a que muchos programas de Windows
399 (incluyendo el Bloc de notas) añaden una BOM por defecto. Véase también
400 <http://es.wikipedia.org/wiki/Marca_de_orden_de_bytes_%28BOM%29>.
402 En Unix los ficheros Unicode típicamente no tienen una BOM. Se supone
403 que los ficheros de texto son codificados en la codificación de
406 Dos2unix sólo puede detectar si un fichero está en formato UTF-16 si el
407 fichero tiene una BOM. Cuando un fichero UTF-16 no tiene una BOM,
408 dos2unix tratará el fichero como un fichero binario.
410 Emplee la opción "-ul" o "-ub" para convertir un fichero UTF-16 sin BOM.
412 Dos2Unix, por defecto, no escribe BOM en el fichero de salida. Con la
413 opción "-b" Dos2unix escribe el BOM cuando el fichero de entrada tiene
416 Unix2dos escribe BOM en el fichero de salida cuando el fichero de
417 entrada tiene BOM. Use la opción "-r" para eliminar el BOM.
419 Dos2unix y unix2dos escriben siempre BOM cuando se usa la opción "-m".
422 Convertir de Windows UTF-16 (con una BOM) a Unix UTF-8
424 dos2unix -n in.txt out.txt
426 Convertir de Windows UTF-16LE (sin una BOM) a Unix UTF-8
428 dos2unix -ul -n in.txt out.txt
430 Convertir de Unix UTF-8 a Windows UTF-8 sin una BOM
432 unix2dos -m -n in.txt out.txt
434 Convertir de Unix UTF-8 a Windows UTF-16
436 unix2dos < in.txt | iconv -f UTF-8 -t UTF-16 > out.txt
439 Lee la entrada desde 'stdin' y escribe la salida a 'stdout'.
444 Convierte y reemplaza a.txt. Convierte y reemplaza b.txt.
447 dos2unix -o a.txt b.txt
449 Convierte y reemplaza a.txt empleando modo de conversión ascii.
453 Convierte y reemplaza a.txt empleando modo de conversión ascii.
454 Convierte y reemplaza b.txt empleando modo de conversión de 7bits.
456 dos2unix a.txt -c 7bit b.txt
457 dos2unix -c ascii a.txt -c 7bit b.txt
458 dos2unix -ascii a.txt -7 b.txt
460 Convierte a.txt del formato de Mac a Unix.
462 dos2unix -c mac a.txt
465 Convierte a.txt del formato de Unix a Mac.
467 unix2dos -c mac a.txt
470 Convierte y reemplaza a.txt manteniendo la fecha del fichero original.
475 Convierte a.txt y escribe la salida a e.txt.
477 dos2unix -n a.txt e.txt
479 Convierte a.txt y escribe la salida a e.txt, manteniendo la fecha de
480 e.txt igual a la de a.txt.
482 dos2unix -k -n a.txt e.txt
484 Convierte y reemplaza a.txt. Convierte b.txt y escribe a e.txt.
486 dos2unix a.txt -n b.txt e.txt
487 dos2unix -o a.txt -n b.txt e.txt
489 Convierte c.txt y escribe a e.txt. Convierte y reemplaza a.txt.
490 Convierte y reemplaza b.txt. Convierte d.txt y escribe a f.txt.
492 dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
495 Emplee dos2unix en combinación con los comandos find(1) y xargs(1) para
496 convertir recursivamente ficheros de texto contenidos en un árbol de
497 directorios. Por ejemplo para convertir todos los ficheros .txt en el
498 árbol de directorios debajo del directorio actual escriba:
500 find . -name *.txt |xargs dos2unix
504 El idioma principal se selecciona con la variable de entorno LANG.
505 La variable LANG consiste de varias partes. La primer parte es el
506 código del idioma en minúsculas. La segunda es opcional y es el
507 código del país en mayúsculas, precedido por un guión bajo. Existe
508 también una tercera parte opcional: la codificación de caracteres,
509 precedida por un punto. Unos cuantos ejemplos para intérpretes de
510 comandos tipo POSIX estándar:
512 export LANG=nl Neerlandés
513 export LANG=nl_NL Neerlandés, Países Bajos
514 export LANG=nl_BE Neerlandés, Bélgica
515 export LANG=es_ES Español, España
516 export LANG=es_MX Español, México
517 export LANG=en_US.iso88591 Ingles, EE. UU., codificación Latín-1
518 export LANG=en_GB.UTF-8 Ingles, Reino Unido, codificación UTF-8
520 Para una lista completa de códigos de idioma y país véase el manual
522 <http://www.gnu.org/software/gettext/manual/gettext.html#Language-Co
525 En sistemas Unix puede emplear el comando locale(1) para obtener
526 información específica del locale.
529 Con la variable de entorno LANGUAGE puede especificar una lista de
530 prioridad de los idiomas, separados por dos puntos. Dos2unix da
531 preferencia a LANGUAGE por encima de LANG. Por ejemplo, primero
532 neerlandés y entonces alemán: "LANGUAGE=nl:de". Antes de que pueda
533 usar una lista de prioridad de idiomas a través de la variable
534 LANGUAGE, primero tiene que habilitar la internacionalización,
535 mediante asignar un valor distinto de "C" a LANG (o LC_ALL). Véase
536 también el manual de gettext:
537 <http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAG
540 Si selecciona un idioma que no está disponible el programa
541 funcionará en ingles.
544 Con la variable de entorno DOS2UNIX_LOCALEDIR el LOCALEDIR asignado
545 durante la compilación puede ser modificado. LOCALEDIR es usado para
546 encontrar los ficheros de idioma. El valor por defecto de GNU es
547 "/usr/local/share/locale". El parámetro --version desplegará el
550 Ejemplo (intérprete de comandos POSIX):
552 export DOS2UNIX_LOCALEDIR=$HOME/share/locale
555 Se regresa cero cuando el programa termina exitosamente. Cuando ocurre
556 un error del sistema se regresará el último número de error del sistema.
557 Para otros errores se regresa 1.
559 El valor de retorno es siempre cero en modo silencioso, excepto cuando
560 se emplean parámetros incorrectos.
563 <http://es.wikipedia.org/wiki/Documento_de_texto>
565 <http://es.wikipedia.org/wiki/Retorno_de_carro>
567 <http://es.wikipedia.org/wiki/Nueva_l%C3%ADnea>
569 <http://es.wikipedia.org/wiki/Unicode>
572 Benjamin Lin - <blin@socs.uts.edu.au> Bernd Johannes Wuebben (mac2unix
573 mode) - <wuebben@kde.org>, Christian Wurll (add extra newline) -
574 <wurll@ira.uka.de>, Erwin Waterlander - <waterlan@xs4all.nl>
577 Página del proyecto: <http://waterlan.home.xs4all.nl/dos2unix.html>
579 Página de SourceForge: <http://sourceforge.net/projects/dos2unix/>
582 file(1) find(1) iconv(1) locale(1) xargs(1)