2 dos2unix - omzetter van tekstbestandsindelingen, van DOS/Mac naar Unix
6 dos2unix [opties] [BESTAND ...] [-n INVOERBESTAND UITVOERBESTAND ...]
7 unix2dos [opties] [BESTAND ...] [-n INVOERBESTAND UITVOERBESTAND ...]
10 Het Dos2unix pakket bevat de toepassingen "dos2unix" en "unix2dos" om
11 platte tekstbestanden in DOS- of Mac-indeling naar Unix-indeling om te
12 zetten, en vice versa.
14 In DOS/Windows-tekstbestanden bestaat een regeleinde uit een combinatie
15 van twee tekens: een 'Carriage Return' (CR) gevolgd door een 'Line Feed'
16 (LF). In Unix-tekstbestanden bestaat een regeleinde uit één enkel
17 'Newline'-teken, dat gelijk is aan een DOS 'Line Feed'-teken (LF). In
18 Mac-tekstbestanden, van vóór Mac OS X, bestaan regeleindes uit één enkel
19 'Carriage Return'-teken. Mac OS X is op Unix gebaseerd en heeft dezelfde
22 Naast regeleindes kan Dos2unix ook de codering van bestanden
23 converteren. Enkele DOS-codetabellen kunnen omgezet worden naar Unix
24 Latin-1. En Windows Unicode-bestanden (UTF-16) kunnen geconverteerd
25 worden naar Unix Unicode-bestanden (UTF-8).
27 Binaire bestanden worden automatisch overgeslagen, behalve als de
28 omzetting geforceerd wordt.
30 Niet-reguliere bestanden, zoals mappen en FIFO's, worden automatisch
33 Symbolische koppelingen en hun doelen blijven standaard onaangeroerd.
34 Optioneel kunnen symbolische koppelingen worden vervangen, of de uitvoer
35 kan naar het doel van de symbolische koppeling worden geschreven. Op
36 Windows wordt het schrijven naar het doel van een symbolische koppeling
39 Dos2unix is gemodelleerd naar dos2unix op SunOS/Solaris, maar er is één
40 belangrijk verschil: deze versie van dos2unix voert standaard een
41 vervangende conversie uit (oud-bestand-modus) terwijl de oorspronkelijke
42 SunOS/Solaris-versie alleen de gepaarde conversie (nieuw-bestand-modus)
43 kent. Zie ook de opties "-o" en "-n".
46 -- Alle volgende opties als bestandsnamen behandelen. Gebruik deze
47 optie als u een bestand wilt converteren waarvan de naam met een
48 streepje begint. Bijvoorbeeld, om een bestand genaamd "-foo" om te
49 zetten, gebruikt u de volgende opdracht:
53 Of in nieuw-bestand-modus:
55 dos2unix -n -- -foo uit.txt
58 Alleen regeleindes converteren. Dit is de standaardconversiemodus.
61 Conversie tussen de tekensets DOS en ISO-8859-1. Zie ook de sectie
65 Windows-codetabel 1252 (West-Europees) gebruiken.
68 DOS-codetabel 437 (VS) gebruiken. Dit is de standaard codetabel die
69 gebruikt wordt bij ISO-conversie.
72 DOS-codetabel 850 (West-Europees) gebruiken.
75 DOS-codetabel 860 (Portugees) gebruiken.
78 DOS-codetabel 863 (Canadees Frans) gebruiken.
81 DOS-codetabel 865 (Scandinavisch) gebruiken.
83 -7 Lettertekens met het achtste bit gezet converteren naar spaties.
86 Een Byte Order Mark (BOM) behouden. Als het invoerbestand een BOM
87 bevat, dan wordt ook een BOM naar het uitvoerbestand geschreven. Dit
88 is het standaardgedrag bij conversie naar DOS. Zie ook optie "-r".
90 -c, --convmode CONVERSIEMODUS
91 De te gebruiken conversiemodus. CONVERSIEMODUS kan zijn: *ascii*,
92 *7bit*, *iso*, of *mac*, waarbij ascii de standaardinstelling is.
95 Conversie van binaire bestanden afdwingen.
101 Het tijdsstempel van het invoerbestand behouden voor het
105 De softwarelicentie tonen.
108 Een extra regeleinde toevoegen.
110 dos2unix: Alleen DOS-regeleindes worden omgezet naar twee
111 Unix-regeleindes. In Mac-modus worden alleen Mac-regeleindes omgezet
112 naar twee Unix-regeleindes.
114 unix2dos: Alleen Unix-regeleindes worden omgezet naar twee
115 DOS-regeleindes. In Mac-modus worden Unix-regeleindes omgezet naar
116 twee Mac-regeleindes.
119 Een Byte Order Mark (BOM) naar het uitvoerbestand schrijven.
120 Standaard wordt een UTF-8-BOM geschreven.
122 Als het invoerbestand in UTF-16 is, en de optie "-u" is gegeven, dan
123 wordt een UTF-16-BOM geschreven.
125 Gebruik deze optie nooit als de codering van het uitvoerbestand niet
126 UTF-8 of UTF-16 is. Zie ook de sectie UNICODE.
128 -n, --newfile INVOERBESTAND UITVOERBESTAND ...
129 Nieuw-bestand-modus. Het bestand INVOERBESTAND converteren en naar
130 bestand UITVOERBESTAND schrijven. Bestandsnamen moeten opgegeven
131 worden in paren. Jokertekens moeten *niet*gebruikt worden, anders
132 *verlies* je de bestanden.
134 De gebruiker die de conversie start in nieuw-bestand (gepaarde)
135 modus wordt de eigenaar van het geconverteerde bestand. De
136 lees/schrijf-toegangsrechten van het nieuwe bestand worden de
137 toegangsrechten van het originele bestand minus de umask(1) van de
138 gebruiker die de conversie draait.
140 -o, --oldfile BESTAND ...
141 Oud-bestand-modus. Het bestand BESTAND converteren en overschrijven.
142 Dit is de standaard modus. Jokertekens kunnen gebruikt worden.
144 In oud-bestand (vervangende) modus krijgt het geconverteerde bestand
145 dezelfde eigenaar, groep en lees/schrijf-rechten als het originele
146 bestand. Ook wanneer het bestand wordt omgezet door een andere
147 gebruiker die schrijfrechten heeft op het bestand (b.v. gebruiker
148 root). De omzetting wordt afgebroken wanneer het niet mogelijk is de
149 originele waardes te behouden. Verandering van eigenaar kan
150 betekenen dat de originele eigenaar het bestand niet meer kan lezen.
151 Verandering van groep zou een veiligheidsrisico kunnen zijn, het
152 bestand zou leesbaar kunnen worden voor personen voor wie het niet
153 bestemd is. Behoud van eigenaar, groep en lees/schrijf-rechten wordt
154 alleen ondersteund op Unix.
157 Stille werking. Alle waarschuwingen onderdrukken. De aflsuitwaarde
158 is nul, behalve wanneer verkeerde opties worden gegeven.
161 Een Byte Order Mark (BOM) verwijderen. Er wordt geen BOM naar het
162 uitvoerbestand geschreven. Dit is het standaardgedrag bij conversie
163 naar Unix. Zie ook optie "-b".
166 Binaire bestanden overslaan (standaard).
169 De originele UTF-16-codering van het invoerbestand behouden. Het
170 uitvoerbestand wordt in dezelfde UTF-16-codering (little endian of
171 big endian) geschreven als het invoerbestand. Dit voorkomt conversie
172 naar UTF-8. Er wordt ook een corresponderende UTF-16-BOM geschreven.
173 Deze optie kan uitgeschakeld worden met de optie "-ascii".
175 -ul, --assume-utf16le
176 Veronderstellen dat de indeling van het invoerbestand UTF-16LE is.
178 Wanneer het invoerbestand een Byte Order Mark (BOM) bevat, dan gaat
179 deze BOM vóór deze optie.
181 Wanneer een verkeerde aanname is gemaakt (het invoerbestand was geen
182 UTF-16LE) en de conversie verliep met succes, dan krijgt u een
183 UTF-8-bestand met verkeerde tekst. De verkeerde conversie kan
184 ongedaan worden gemaakt door met iconv(1) het UTF-8-uitvoerbestand
185 terug om te zetten naar UTF-16LE. Dit zal het originele bestand
188 De aanname van UTF-16LE werkt als een *conversiemodus*. Door de
189 standaardmodus *ascii* in te schakelen wordt de
190 UTF-16LE-veronderstelling uitgeschakeld.
192 -ub, --assume-utf16be
193 Veronderstellen dat de indeling van het invoerbestand UTF-16BE is.
195 Deze optie werkt hetzelfde als optie "-ul".
198 Extra meldingen weergeven. Er wordt extra informatie getoond over
199 'Byte Order Marks' en het aantal geconverteerde regeleindes.
202 Symbolische koppelingen volgen en de doelen converteren.
204 -R, --replace-symlink
205 Symbolische koppelingen vervangen door geconverteerde bestanden (de
206 originele doelbestanden blijven ongewijzigd).
209 Symbolische koppelingen en doelen ongewijzigd laten (standaard).
212 Versie-informatie tonen.
215 In normale modus worden DOS-regeleindes naar Unix omgezet en vice versa.
216 Mac-regeleindes worden niet omgezet.
218 In Mac-modus worden Mac-regeleindes naar Unix omgezet en vice versa.
219 DOS-regeleindes blijven ongewijzigd.
221 Om in Mac-modus te draaien kunt u de opdrachtregeloptie "-c mac"
222 gebruiken, of de opdrachten "mac2unix" of "unix2mac".
226 In modus "ascii" worden alleen regeleindes omgezet. Dit is de
229 Hoewel de naam van deze modus ASCII is, wat een 7-bits standaard is,
230 is de werkelijke modus 8-bits. Gebruik altijd deze modus wanneer u
231 Unicode UTF-8-bestanden omzet.
234 Alle 8-bits niet-ASCII lettertekens (met waardes van 128 t/m 255)
235 worden omgezet naar een 7-bits spatie.
237 iso Tekens worden omgezet tussen een DOS-tekenset (codetabel) en de
238 ISO-tekenset ISO-8859-1 (Latin-1) op Unix. DOS-tekens zonder een
239 ISO-8859-1-equivalent, waarvoor dus geen omzetting mogelijk is,
240 worden omgezet in een punt. Hetzelfde geldt voor ISO-8859-1-tekens
241 zonder DOS-tegenhanger.
243 Wanneer alleen optie "-iso" gebruikt wordt, zal dos2unix proberen de
244 actieve codetabel te gebruiken. Als dat niet mogelijk is wordt
245 codetabel CP437 gebruikt, die vooral in de VS gebruikt wordt. Om een
246 bepaalde codetabel te forceren, kunt u de opties -850
247 (West-Europees), -860 (Portugees), -863 (Canadees Frans) of -865
248 (Scandinavisch) gebruiken. Windows-codetabel CP1252 (West-Europees)
249 wordt ook ondersteund met optie -1252. Gebruik voor andere
250 codetabellen dos2unix in combinatie met iconv(1). Iconv kan omzetten
251 tussen een lange lijst tekensetcoderingen.
253 Gebruik ISO-conversie nooit op Unicode-tekstbestanden. Het zal
254 UTF-8-gecodeerde bestanden beschadigen.
258 Omzetten van de standaard DOS-codetabel naar Unix Latin-1
260 dos2unix -iso -n in.txt uit.txt
262 Omzetten van DOS CP850 naar Unix Latin-1
264 dos2unix -850 -n in.txt uit.txt
266 Omzetten van Windows CP1252 naar Unix Latin-1
268 dos2unix -1252 -n in.txt uit.txt
270 Omzetten van Windows CP1252 naar Unix UTF-8 (Unicode)
272 iconv -f CP1252 -t UTF-8 in.txt | dos2unix > uit.txt
274 Omzetten van Unix Latin-1 naar de standaard DOS-codetabel
276 unix2dos -iso -n in.txt uit.txt
278 Omzetten van Unix Latin-1 naar DOS CP850
280 unix2dos -850 -n in.txt uit.txt
282 Omzetten van Unix Latin-1 naar Windows CP1252
284 unix2dos -1252 -n in.txt uit.txt
286 Omzetten van Unix UTF-8 (Unicode) naar Windows CP1252
288 unix2dos < in.txt | iconv -f UTF-8 -t CP1252 > uit.txt
290 Zie ook <http://czyborra.com/charsets/codepages.html> en
291 <http://czyborra.com/charsets/iso8859.html>.
295 Er bestaan verschillende Unicode-coderingen. Op Unix en Linux zijn
296 Unicode-bestanden typisch gecodeerd in UTF-8. Op Windows kunnen
297 Unicode-tekstbestanden gecodeerd zijn in UTF-8, UTF-16 of UTF-16 big
298 endian, maar ze zijn meestal gecodeerd in UTF-16.
301 Unicode-tekstbestanden kunnen DOS-, Unix- of Mac-regeleindes hebben, net
302 als reguliere tekstbestanden.
304 Alle versies van dos2unix en unix2dos kunnen UTF-8-gecodeerde bestanden
305 omzetten, want UTF-8 is ontworpen op compatibiliteit met ASCII.
307 Dos2unix en unix2dos met Unicode UTF-16-ondersteuning, kunnen little en
308 big endian UTF-16 gecodeerde tekstbestanden lezen. Om er achter te komen
309 of dos2unix gebouwd is met UTF-16- ondersteuning, typt u "dos2unix -V".
311 In UTF-16 gecodeerde bestanden worden standaard geconverteerd naar
312 UTF-8. Op Unix/Linux dient de codering van de taalregio op UTF-8
313 ingesteld te zijn. Gebruik de opdracht locale(1) om uit te vinden wat de
314 codering van uw taalregio is. In UTF-8 gecodeerde bestanden worden
315 wijdverbreid ondersteund, zowel in Windows als op Unix/Linux.
317 De UTF-16- en UTF-8-coderingen zijn volledig compatibel, er gaat bij het
318 converteren niets verloren. Als er tijdens de conversie van UTF-16 naar
319 UTF-8 een fout optreedt, bijvoorbeeld omdat het UTF-16-invoerbestand een
320 fout bevat, dan wordt het bestand overgeslagen.
322 Wanneer "-u" gebruikt wordt, wordt het uitvoerbestand in dezelfde
323 UTF-16-codering geschreven als het invoerbestand. Optie "-u" voorkomt
324 conversie naar UTF-8.
326 Dos2unix en unix2dos hebben geen optie om van UTF-8 naar UTF-16 te
329 ISO- en 7-bits-conversie werken niet op UTF-16-bestanden.
332 Op Windows bevatten Unicode-tekstbestanden typisch een 'Byte Order Mark'
333 (BOM), omdat veel Windows-programma's (inclusief Kladblok) standaard een
334 BOM toevoegen. Zie ook <http://en.wikipedia.org/wiki/Byte_order_mark>.
336 Op Unix hebben Unicode-tekstbestanden typisch geen BOM. Er wordt
337 aangenomen dat de codering van tekstbestanden gelijk is aan de lokale
340 Dos2unix kan alleen detecteren of een bestand in UTF-16-codering is als
341 het bestand een BOM bevat. Wanneer een UTF-16-bestand geen BOM heeft,
342 ziet dos2unix het bestand als een binair bestand.
344 Gebruik optie "-ul" of "-ub" om een UTF-16-bestand zonder BOM om te
347 Dos2unix schrijft standaard geen BOM in het uitvoerbestand. Met optie
348 "-b" schrijft dos2unix een BOM wanneer het invoerbestand een BOM bevat.
350 Unix2dos schrijft standaard een BOM in het uitvoerbestand wanneer het
351 invoerbestand een BOM bevat. Gebruik optie "-r" om de BOM te
354 Dos2unix en unix2dos schrijven altijd een BOM wanneer optie "-m"
358 Omzetten van Windows UTF-16 (met BOM) naar Unix UTF-8
360 dos2unix -n in.txt uit.txt
362 Omzetten van Windows UTF-16LE (zonder BOM) naar Unix UTF-8
364 dos2unix -ul -n in.txt uit.txt
366 Omzetten van Unix UTF-8 naar Windows UTF-8 met BOM
368 unix2dos -m -n in.txt uit.txt
370 Omzetten van Unix UTF-8 naar Windows UTF-16
372 unix2dos < in.txt | iconv -f UTF-8 -t UTF-16 > uit.txt
375 Invoer lezen van standaardinvoer en uitvoer schrijven naar
381 Omzetten en vervangen van a.txt. Omzetten en vervangen van b.txt.
384 dos2unix -o a.txt b.txt
386 Omzetten en vervangen van a.txt in ascii-conversiemodus.
390 Omzetten en vervangen van a.txt in ascii-conversiemodus. Omzetten en
391 vervangen b.txt in 7-bits conversiemodus.
393 dos2unix a.txt -c 7bit b.txt
394 dos2unix -c ascii a.txt -c 7bit b.txt
395 dos2unix -ascii a.txt -7 b.txt
397 Omzetten van a.txt van Mac- naar Unix-indeling.
399 dos2unix -c mac a.txt
402 Omzetten van a.txt van Unix- naar Mac-indeling.
404 unix2dos -c mac a.txt
407 Omzetten en vervangen van a.txt met behoud van origineel tijdsstempel.
412 Omzetten van a.txt en naar e.txt schrijven.
414 dos2unix -n a.txt e.txt
416 Omzetten van a.txt en naar e.txt schrijven, met tijdsstempel van e.txt
417 gelijk aan die van a.txt.
419 dos2unix -k -n a.txt e.txt
421 Omzetten en vervangen van a.txt. Omzetten van b.txt en naar e.txt
424 dos2unix a.txt -n b.txt e.txt
425 dos2unix -o a.txt -n b.txt e.txt
427 Omzetten van c.txt en naar e.txt schrijven. Omzetten en vervangen van
428 a.txt. Omzetten en vervangen van b.txt. Omzetten van d.txt en naar f.txt
431 dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
434 Gebruik dos2unix in combinatie met de opdrachten find(1) en xargs(1) om
435 tekstbestanden in een mappenboom recursief om te zetten. Bijvoorbeeld om
436 alle .txt-bestanden in de mappenboom onder de huidige map te
439 find . -name *.txt |xargs dos2unix
443 The primaire taal wordt geselecteerd via de omgevingsvariabele LANG.
444 De variabele LANG bestaat uit verschillende onderdelen. Het eerste
445 deel is in kleine letters de taalcode. Het tweede deel is optioneel
446 en is de landcode in hoofdletters, voorafgegaan door een liggend
447 streepje. Er is ook een optioneel derde deel: de tekencodering,
448 voorafgegaan door een punt. Enkele voorbeelden voor een POSIX-shell:
450 export LANG=nl Nederlands
451 export LANG=nl_NL Nederlands, Nederland
452 export LANG=nl_BE Nederlands, België
453 export LANG=es_ES Spaans, Spanje
454 export LANG=es_MX Spaans, Mexico
455 export LANG=en_US.iso88591 Engels, VS, Latin-1-codering
456 export LANG=en_GB.UTF-8 Engels, GB, UTF-8-codering
458 Voor een complete lijst van taal- en landcodes zie de
460 <http://www.gnu.org/software/gettext/manual/gettext.html#Language-Co
463 Op Unix-systemen kunt u de opdracht locale(1) gebruiken om
464 specifieke taalregio-informatie te verkrijgen.
467 Met de omgevingsvariabele LANGUAGE kunt u een prioriteitenlijst
468 specificeren van talen, gescheiden door dubbele punten. Dos2unix
469 geeft voorrang aan LANGUAGE boven LANG. Bijvoorbeeld, eerst
470 Nederlands en dan Duits: "LANGUAGE=nl:de". U moet eerst lokalisatie
471 in werking stellen, door het instellen van LANG (of LC_ALL) op een
472 waarde ongelijk aan "C", voordat u een talen-prioriteitenlijst kunt
473 gebruiken via de variabele LANGUAGE. Zie ook de gettext-handleiding:
474 <http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAG
477 Als u een taal kiest die niet beschikbaar is, worden de standaard
478 Engelse berichten gebruikt.
481 Met de omgevingsvariabele DOS2UNIX_LOCALEDIR kan de LOCALEDIR die
482 ingesteld werd tijdens compilatie worden overstemd. LOCALEDIR wordt
483 gebruikt om de taalbestanden te vinden. De GNU standaardwaarde is
484 "/usr/local/share/locale". De optie --version laat de gebruikte
487 Voorbeeld (POSIX-shell):
489 export DOS2UNIX_LOCALEDIR=$HOME/share/locale
492 Bij succes wordt nul teruggegeven. Wanneer een systeemfout optreedt
493 wordt het laatste systeemfoutnummer teruggegeven. Bij andere fouten
494 wordt 1 teruggegeven.
496 De afsluitwaarde is altijd nul in de stillewerkingsmodus, behalve
497 wanneer verkeerde opties worden gegeven.
500 <http://nl.wikipedia.org/wiki/Tekstbestand>
502 <http://nl.wikipedia.org/wiki/Carriage_Return>
504 <http://nl.wikipedia.org/wiki/Linefeed>
506 <http://nl.wikipedia.org/wiki/Unicode>
509 Benjamin Lin - <blin@socs.uts.edu.au> Bernd Johannes Wuebben
510 (mac2unix-modus) - <wuebben@kde.org>, Christian Wurll (toevoegen van
511 extra regeleindes) - <wurll@ira.uka.de>, Erwin Waterlander -
512 <waterlan@xs4all.nl> (beheerder)
514 Projectpagina: <http://waterlan.home.xs4all.nl/dos2unix.html>
516 SourceForge-pagina: <http://sourceforge.net/projects/dos2unix/>
519 file(1) find(1) iconv(1) locale(1) xargs(1)