summaryrefslogtreecommitdiff
path: root/man/pl/man1/dos2unix.1
blob: da3c48b2afa93c9c92f11f781a209f8f214486f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.30)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings.  \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
.    ds -- \(*W-
.    ds PI pi
.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
.    ds L" ""
.    ds R" ""
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds -- \|\(em\|
.    ds PI \(*p
.    ds L" ``
.    ds R" ''
.    ds C`
.    ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{
.    if \nF \{
.        de IX
.        tm Index:\\$1\t\\n%\t"\\$2"
..
.        if !\nF==2 \{
.            nr % 0
.            nr F 2
.        \}
.    \}
.\}
.rr rF
.\" ========================================================================
.\"
.IX Title "dos2unix 1"
.TH dos2unix 1 "2015-08-24" "dos2unix" "2015-08-24"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAZWA"
.IX Header "NAZWA"
dos2unix \- konwerter formatu plików tekstowych między systemami DOS/Mac a
Uniksem
.SH "SKŁADNIA"
.IX Header "SKŁADNIA"
.Vb 2
\&    dos2unix [opcje] [PLIK ...] [\-n PLIK_WEJ PLIK_WYJ ...]
\&    unix2dos [opcje] [PLIK ...] [\-n PLIK_WEJ PLIK_WYJ ...]
.Ve
.SH "OPIS"
.IX Header "OPIS"
Pakiet Dos2unix zawiera narzędzia \f(CW\*(C`dos2unix\*(C'\fR oraz \f(CW\*(C`unix2dos\*(C'\fR do konwersji
zwykłych plików tekstowych między formatami używanymi w systemach \s-1DOS\s0 lub
Mac a formatem uniksowym.
.PP
W plikach tekstowych systemu DOS/Windows oznaczenie końca linii to
połączenie dwóch znaków: powrotu karetki (\s-1CR\s0) i przesunięcia linii (\s-1LF\s0). W
uniksowych plikach tekstowych koniec linii to pojedynczy znak \s-1LF. W\s0 plikach
tekstowych systemu Mac sprzed Mac \s-1OS X\s0 koniec linii był pojedynczym znakiem
\&\s-1CR.\s0 Obecnie Mac \s-1OS\s0 wykorzystuje uniksowe końce linii (\s-1LF\s0).
.PP
Oprócz oznaczeń końców linii Dos2unix potrafi konwertować także kodowanie
plików. Kilko stron kodowych DOS-a może być przekonwertowanych do uniksowego
Latin\-1, a windowsowy Unicode (\s-1UTF\-16\s0) do powszechniejszego pod Uniksem
kodowania Unicode \s-1UTF\-8.\s0
.PP
Pliki binarne są pomijane automatycznie, chyba że konwersja zostanie
wymuszona.
.PP
Pliki inne niż zwykłe, np. katalogi lub \s-1FIFO,\s0 są pomijane automatycznie.
.PP
Dowiązania symboliczne i ich cele są domyślnie pozostawiane bez
zmian. Dowiązania symboliczne mogą być opcjonalnie zastępowane, albo wyjście
może być zapisywane do celu dowiązania. Zapis do celu dowiązania
symbolicznego nie jest obsługiwane pod Windows.
.PP
Dos2unix powstał na podstawie narzędzia dos2unix z systemu
SunOS/Solaris. Jest jedna istotna różnica w stosunku do oryginalnej wersji z
SunOS\-a/Solarisa: ta wersja domyślnie wykonuje konwersję w miejscu (tryb
starego pliku), podczas gdy oryginalna obsługiwała tylko konwersję parami
(tryb nowego pliku) \- p. także opcje \f(CW\*(C`\-o\*(C'\fR i \f(CW\*(C`\-n\*(C'\fR.
.SH "OPCJE"
.IX Header "OPCJE"
.IP "\fB\-\-\fR" 4
.IX Item "--"
Potraktowanie wszystkich kolejnych opcji jako nazw plików. Tej opcji należy
użyć, aby przekonwertować pliki, których nazwy zaczynają się od
minusa. Przykładowo, aby przekonwertować plik o nazwie \*(L"\-foo\*(R", można użyć
polecenia:
.Sp
.Vb 1
\&    dos2unix \-\- \-foo
.Ve
.Sp
Lub w trybie nowego pliku:
.Sp
.Vb 1
\&    dos2unix \-n \-\- \-foo out.txt
.Ve
.IP "\fB\-ascii\fR" 4
.IX Item "-ascii"
Konwersja tylko znaków końca linii. Jest to domyślny tryb konwersji.
.IP "\fB\-iso\fR" 4
.IX Item "-iso"
Konwersja między zestawami znaków \s-1DOS\s0 i \s-1ISO\-8859\-1.\s0 Więcej w sekcji \s-1TRYBY
KONWERSJI.\s0
.IP "\fB\-1252\fR" 4
.IX Item "-1252"
Użycie strony kodowej Windows 1252 (zachodnioeuropejskiej).
.IP "\fB\-437\fR" 4
.IX Item "-437"
Użycie strony kodowej \s-1DOS 437 \s0(\s-1US\s0). Jest to domyślna strona kodowa używana
przy konwersji \s-1ISO.\s0
.IP "\fB\-850\fR" 4
.IX Item "-850"
Użycie strony kodowej \s-1DOS 850 \s0(zachodnioeuropejskiej).
.IP "\fB\-860\fR" 4
.IX Item "-860"
Użycie strony kodowej \s-1DOS 860 \s0(portugalskiej).
.IP "\fB\-863\fR" 4
.IX Item "-863"
Użycie strony kodowej \s-1DOS 863 \s0(kanadyjskiej francuskiej).
.IP "\fB\-865\fR" 4
.IX Item "-865"
Użycie strony kodowej \s-1DOS 865 \s0(nordyckiej).
.IP "\fB\-7\fR" 4
.IX Item "-7"
Konwersja znaków 8\-bitowych do przestrzeni 7\-bitowej.
.IP "\fB\-b, \-\-keep\-bom\fR" 4
.IX Item "-b, --keep-bom"
Zachowanie znaku \s-1BOM \s0(Byte Order Makr). Jeżeli plik wejściowy zawiera \s-1BOM,\s0
powoduje zapisanie go w pliku wyjściowym. Jest to domyślne zachowanie przy
konwersji na DOS-owe końce linii. P. także opcja \f(CW\*(C`\-r\*(C'\fR.
.IP "\fB\-c, \-\-convmode \s-1TRYB_KONW\s0\fR" 4
.IX Item "-c, --convmode TRYB_KONW"
Ustawienie trybu konwersji. \s-1TRYB_KONW\s0 to jeden z: \fIascii\fR, \fI7bit\fR, \fIiso\fR,
\&\fImac\fR, przy czym domyślny jest ascii.
.IP "\fB\-D, \-\-display\-enc \s-1ENCODING\s0\fR" 4
.IX Item "-D, --display-enc ENCODING"
Set encoding of displayed text. Where \s-1ENCODING\s0 is one of: \fIansi\fR,
\&\fIunicode\fR, \fIutf8\fR with ansi being the default.
.Sp
This option is only available in dos2unix for Windows with Unicode file name
support. This option has no effect on the actual file names read and
written, only on how they are displayed.
.Sp
There are several methods for displaying text in a Windows console based on
the encoding of the text. They all have their own advantages and
disadvantages.
.RS 4
.IP "\fBansi\fR" 4
.IX Item "ansi"
Dos2unix's default method is to use \s-1ANSI\s0 encoded text. The advantage is that
it is backwards compatible. It works with raster and TrueType fonts. In some
regions you may need to change the active \s-1DOS OEM\s0 code page to the Windows
system \s-1ANSI\s0 code page using the \f(CW\*(C`chcp\*(C'\fR command, because dos2unix uses the
Windows system code page.
.Sp
The disadvantage of ansi is that international file names with characters
not inside the system default code page are not displayed properly. You will
see a question mark, or a wrong symbol instead. When you don't work with
foreign file names this method is \s-1OK.\s0
.IP "\fBunicode\fR" 4
.IX Item "unicode"
The advantage of unicode (the Windows name for \s-1UTF\-16\s0) encoding is that text
is usually properly displayed. There is no need to change the active code
page.  You may need to set the console's font to a TrueType font to have
international characters displayed properly. When a character is not
included in the TrueType font you usually see a small square, sometimes with
a question mark in it.
.Sp
When you use the ConEmu console all text is displayed properly, because
ConEmu automatically selects a good font.
.Sp
The disadvantage of unicode is that it is not compatible with \s-1ASCII.\s0 The
output is not easy to handle when you redirect it to another program or a
file.  Redirection to a file does not give a correct \s-1UTF\-16\s0 file.
.IP "\fButf8\fR" 4
.IX Item "utf8"
The advantage of utf8 is that it is compatible with \s-1ASCII\s0 and when you
redirect it to a file you get a proper \s-1UTF\-8\s0 file. You need to set the
console's font to a TrueType font. With a TrueType font the text is
displayed similar as with the \f(CW\*(C`unicode\*(C'\fR encoding.
.Sp
The disadvantage is that when you use the default raster font all non-ASCII
characters are displayed wrong. Not only unicode file names, but also
translated messages become unreadable. On Windows configured for an
East-Asian region you may see a lot of flickering of the console when the
messages are displayed.
.Sp
In a ConEmu console the utf8 encoding method works well.
.RE
.RS 4
.Sp
The default encoding can be changed with environment variable
\&\s-1DOS2UNIX_DISPLAY_ENC\s0 by setting it to \f(CW\*(C`unicode\*(C'\fR or \f(CW\*(C`utf8\*(C'\fR.
.RE
.IP "\fB\-f, \-\-force\fR" 4
.IX Item "-f, --force"
Wymuszenie konwersji plików binarnych.
.IP "\fB\-gb, \-\-gb18030\fR" 4
.IX Item "-gb, --gb18030"
Pod Windows pliki w \s-1UTF\-16\s0 są domyślnie konwertowane do \s-1UTF\-8,\s0 niezależnie
od ustawienia lokalizacji. Ta opcja pozwala przekonwertować pliki w \s-1UTF\-16\s0
do \s-1GB18030.\s0 Opcja jest dostępna tylko pod Windows, więcej w sekcji
dotyczącej \s-1GB18030.\s0
.IP "\fB\-h, \-\-help\fR" 4
.IX Item "-h, --help"
Wyświetlenie opisu i zakończenie.
.IP "\fB\-i[\s-1FLAGI\s0], \-\-info[=FLAGI] \s-1PLIK ...\s0\fR" 4
.IX Item "-i[FLAGI], --info[=FLAGI] PLIK ..."
Wyświetlenie informacji o pliku. Konwersja nie jest wykonywana.
.Sp
Wypisywane są następujące informacje, w tej kolejności: liczba DOS-owych
końców linii, liczba uniksowych końców linii, liczba macowych końców linii,
znacznik \s-1BOM,\s0 tekstowy lub binarny, nazwa pliku.
.Sp
Przykładowe wyjście:
.Sp
.Vb 8
\&     6       0       0  no_bom    text    dos.txt
\&     0       6       0  no_bom    text    unix.txt
\&     0       0       6  no_bom    text    mac.txt
\&     6       6       6  no_bom    text    mixed.txt
\&    50       0       0  UTF\-16LE  text    utf16le.txt
\&     0      50       0  no_bom    text    utf8unix.txt
\&    50       0       0  UTF\-8     text    utf8dos.txt
\&     2     418     219  no_bom    binary  dos2unix.exe
.Ve
.Sp
Opcjonalnie można ustawić dodatkowe flagi, aby zmienić wyjście. Można dodać
jedną lub więcej flag.
.RS 4
.IP "\fBd\fR" 4
.IX Item "d"
Wypisanie liczby DOS-owych końców linii.
.IP "\fBu\fR" 4
.IX Item "u"
Wypisanie liczby uniksowych końców linii.
.IP "\fBm\fR" 4
.IX Item "m"
Wypisanie liczby macowych końców linii.
.IP "\fBb\fR" 4
.IX Item "b"
Wypisanie znacznika \s-1BOM.\s0
.IP "\fBt\fR" 4
.IX Item "t"
Wypisanie, czy plik jest tekstowy, czy binarny.
.IP "\fBc\fR" 4
.IX Item "c"
Wypisanie tylko plików, które zostałyby przekonwertowane.
.Sp
Z flagą \f(CW\*(C`c\*(C'\fR dos2unix wypisze tylko pliki zawierające DOS-owe końce linii, a
unix2dos wypisze tylko nazwy plików zawierających uniksowe końce linii.
.RE
.RS 4
.Sp
Przykłady:
.Sp
Pokazanie informacji o wszystkich plikach *.txt:
.Sp
.Vb 1
\&    dos2unix \-i *.txt
.Ve
.Sp
Pokazanie tylko liczby DOS-owych i uniksowych końców linii:
.Sp
.Vb 1
\&    dos2unix \-idu *.txt
.Ve
.Sp
Pokazanie tylko znacznika \s-1BOM:\s0
.Sp
.Vb 1
\&    dos2unix \-\-info=b *.txt
.Ve
.Sp
Wypisanie listy plików zawierających DOS-owe końce linii:
.Sp
.Vb 1
\&    dos2unix \-ic *.txt
.Ve
.Sp
Wypisanie listy plików zawierających uniksowe końce linii:
.Sp
.Vb 1
\&    unix2dos \-ic *.txt
.Ve
.RE
.IP "\fB\-k, \-\-keepdate\fR" 4
.IX Item "-k, --keepdate"
Zachowanie znacznika czasu pliku wyjściowego takiego samego, jak pliku
wejściowego.
.IP "\fB\-L, \-\-license\fR" 4
.IX Item "-L, --license"
Wyświetlenie licencji programu.
.IP "\fB\-l, \-\-newline\fR" 4
.IX Item "-l, --newline"
Dodanie dodatkowego znaku końca linii.
.Sp
\&\fBdos2unix\fR: tylko DOS-owe znaki końca linii są zamieniane na dwa
uniksowe. W trybie Mac tylko macowe znaki końca linii są zamieniane na dwa
uniksowe.
.Sp
\&\fBunix2dos\fR: tylko uniksowe znaki końca linii są zamieniane na dwa
DOS-owe. W trybie Mac uniksowe znaki końca linii są zamieniane na dwa
macowe.
.IP "\fB\-m, \-\-add\-bom\fR" 4
.IX Item "-m, --add-bom"
Zapisanie znacznika \s-1BOM \s0(Byte Order Mark) w pliku wyjściowym. Domyślnie
zapisywany jest \s-1BOM UTF\-8.\s0
.Sp
Jeśli plik wejściowy jest w kodowaniu \s-1UTF\-16\s0 i użyto opcji \f(CW\*(C`\-u\*(C'\fR, zostanie
zapisany \s-1BOM UTF\-16.\s0
.Sp
Nigdy nie należy używać tej opcji, jeśli kodowanie wyjściowe jest inne niż
\&\s-1UTF\-8, UTF\-16\s0 lub \s-1GB18030.\s0 Więcej w sekcji \s-1UNICODE.\s0
.IP "\fB\-n, \-\-newfile \s-1PLIK_WEJ PLIK_WYJ ...\s0\fR" 4
.IX Item "-n, --newfile PLIK_WEJ PLIK_WYJ ..."
Tryb nowego pliku. Konwersja \s-1PLIKU_WEJ\s0 z zapisem wyjścia do \s-1PLIKU_WYJ.\s0 Nazwy
plików muszą być podane parami, a masek \fInie\fR należy używać, gdyż
\&\fIspowoduje\fR to utratę plików.
.Sp
Osoba uruchamiająca konwersję w trybie nowego pliku (par) będzie
właścicielem przekonwertowanego pliku. Prawa odczytu/zapisu nowego pliku
będą pochodziły z praw pliku oryginalnego po odjęciu \fIumask\fR\|(1) osoby
uruchamiającej konwersję.
.IP "\fB\-o, \-\-oldfile \s-1PLIK ...\s0\fR" 4
.IX Item "-o, --oldfile PLIK ..."
Tryb starego pliku. Konwersja \s-1PLIKU\s0 i nadpisanie go wyjściem. Program działa
domyślnie w tym trybie. Można używać masek.
.Sp
W trybie starego pliku (w miejscu) przekonwertowany plik otrzymuje tego
samego właściciela, grupę oraz prawa odczytu/zapisu, jak plik oryginalny \-
także wtedy, gdy plik jest konwertowany przez innego użytkownika, mającego
prawo zapisu do pliku (np. przez użytkownika root). Konwersja zostanie
przerwana, jeśli nie będzie możliwe zachowanie oryginalnych wartości. Zmiana
właściciela mogłaby oznaczać, że pierwotny właściciel nie może już odczytać
pliku. Zmiana grupy mogłaby być zagrożeniem bezpieczeństwa, plik mógłby być
czytelny dla nie zamierzonych osób. Zachowanie właściciela, grupy i praw
odczytu/zapisu jest obsługiwane tylko na Uniksie.
.IP "\fB\-q, \-\-quiet\fR" 4
.IX Item "-q, --quiet"
Tryb cichy. Pominięcie wszystkich ostrzeżeń i komunikatów. Zwracanym kodem
jest zero, chyba że podano błędne opcje linii poleceń.
.IP "\fB\-r, \-\-remove\-bom\fR" 4
.IX Item "-r, --remove-bom"
Usunięcie znaków \s-1BOM \s0(Byte Order Mark). Bez zapisywania \s-1BOM\s0 do pliku
wyjściowego. Jest to domyślne zachowanie przy konwersji na uniksowe końce
linii. P. także opcja \f(CW\*(C`\-b\*(C'\fR.
.IP "\fB\-s, \-\-safe\fR" 4
.IX Item "-s, --safe"
Pominięcie plików binarnych (domyślne).
.IP "\fB\-u, \-\-keep\-utf16\fR" 4
.IX Item "-u, --keep-utf16"
Zachowanie oryginalnego kodowania pliku wejściowego \s-1UTF\-16.\s0 Plik wyjściowy
zostanie zapisany w tym samym kodowaniu \s-1UTF\-16 \s0(little lub big endian), co
plik wejściowy. Zapobiega to przekształceniu do \s-1UTF\-8.\s0 Do pliku zostanie
zapisany odpowiedni znacznik \s-1BOM UTF\-16.\s0 Tę opcję można wyłączyć opcją
\&\f(CW\*(C`\-ascii\*(C'\fR.
.IP "\fB\-ul, \-\-assume\-utf16le\fR" 4
.IX Item "-ul, --assume-utf16le"
Przyjęcie, że format pliku wejściowego to \s-1UTF\-16LE.\s0
.Sp
Jeśli w pliku wejściowym jest znacznik \s-1BOM \s0(Byte Order Mark), ma on
priorytet nad tą opcją.
.Sp
Jeśli przyjęto błędne założenie (plik wejściowy nie jest w formacie
\&\s-1UTF\-16LE\s0), a konwersja się uda, wynikiem będzie plik wyjściowy \s-1UTF\-8\s0 ze złym
tekstem. Konwersję tę można odwrócić przy użyciu polecenia \fIiconv\fR\|(1) do
konwersji wyjścia \s-1UTF\-8\s0 z powrotem do \s-1UTF\-16LE.\s0 Przywróci to plik
oryginalny.
.Sp
Przyjęcie \s-1UTF\-16LE\s0 działa jako \fItryb konwersji\fR. Przy przełączeniu na
domyślny tryb \fIascii\fR przyjęcie \s-1UTF\-16LE\s0 jest wyłączane.
.IP "\fB\-ub, \-\-assume\-utf16be\fR" 4
.IX Item "-ub, --assume-utf16be"
Przyjęcie, że format pliku wejściowego to \s-1UTF\-16BE.\s0
.Sp
Ta opcja działa analogicznie do \f(CW\*(C`\-ul\*(C'\fR.
.IP "\fB\-v, \-\-verbose\fR" 4
.IX Item "-v, --verbose"
Wyświetlanie szczegółowych komunikatów. Wyświetlane śa dodatkowe informacje
o znacznikach \s-1BOM \s0(Byte Order Mark) oraz liczbie przekonwertowanych końców
linii.
.IP "\fB\-F, \-\-follow\-symlink\fR" 4
.IX Item "-F, --follow-symlink"
Podążanie za dowiązaniami symbolicznymi i konwertowanie ich celów
.IP "\fB\-R, \-\-replace\-symlink\fR" 4
.IX Item "-R, --replace-symlink"
Zastępowanie dowiązań symbolicznych przekonwertowanymi plikami (oryginalne
pliki docelowe pozostają bez zmian).
.IP "\fB\-S, \-\-skip\-symlink\fR" 4
.IX Item "-S, --skip-symlink"
Pozostawienie dowiązań symbolicznych i celów bez zmian (domyślne).
.IP "\fB\-V, \-\-version\fR" 4
.IX Item "-V, --version"
Wyświetlenie informacji o wersji i zakończenie.
.SH "TRYB MAC"
.IX Header "TRYB MAC"
W zwykłym trybie znaki końca linii są konwertowane z DOS-a do Uniksa i
odwrotnie. Znaki końca linii systemu Mac nie są konwertowane.
.PP
W trybie Mac znaki końca linii są konwertowane z formatu Maca do Uniksa i
odwrotnie. Znaki końca linii systemu \s-1DOS\s0 nie są zmieniane.
.PP
Aby uruchomić program w trybie Mac, należy użyć opcji linii poleceń \f(CW\*(C`\-c
mac\*(C'\fR albo użyć poleceń \f(CW\*(C`mac2unix\*(C'\fR lub \f(CW\*(C`unix2mac\*(C'\fR.
.SH "TRYBY KONWERSJI"
.IX Header "TRYBY KONWERSJI"
.IP "\fBascii\fR" 4
.IX Item "ascii"
W trybie \f(CW\*(C`ascii\*(C'\fR konwertowane są tylko końce linii. Jest to domyślny tryb
konwersji.
.Sp
Mimo że nazwa tego trybu to \s-1ASCII,\s0 które jest standardem 7\-bitowym, jest to
tryb 8\-bitowy. Należy zawsze używać tego trybu przy konwersji plików Unicode
\&\s-1UTF\-8.\s0
.IP "\fB7bit\fR" 4
.IX Item "7bit"
W tym trybie wszystkie znaki 8\-bitowe spoza \s-1ASCII \s0(o wartościach od 128 do
255) są konwertowane do przestrzeni 7\-bitowej.
.IP "\fBiso\fR" 4
.IX Item "iso"
W tym trybie znaki są konwertowane między zestawem znaków \s-1DOS \s0(stroną
kodową) a zestawem znaków \s-1ISO\-8859\-1 \s0(Latin\-1) używanym na Uniksie. Znaki
DOS-owe nie mające odpowiednika w \s-1ISO\-8859\-1,\s0 których nie da się
przekonwertować, są zamieniane na kropkę. To samo dotyczy znaków \s-1ISO\-8859\-1\s0
bez odpowiednika w DOS-ie.
.Sp
Jeśli używana jest tylko opcja \f(CW\*(C`\-iso\*(C'\fR, dos2unix próbuje wykryć aktywną
stronę kodową. Jeśli nie jest to możliwe, dos2unix używa domyślnej strony
kodowej \s-1CP437,\s0 stosowanej głównie w \s-1USA.\s0 Aby wymusić określoną stronę
kodową, należy użyć opcji \f(CW\*(C`\-437\*(C'\fR (\s-1US\s0), \f(CW\*(C`\-850\*(C'\fR (zachodnioeuropejska),
\&\f(CW\*(C`\-860\*(C'\fR (portugalska), \f(CW\*(C`\-863\*(C'\fR (kanadyjska francuska) lub \f(CW\*(C`\-865\*(C'\fR
(nordycka). Ponadto obsługiwana jest strona kodowa Windows \s-1CP1252
\&\s0(zachodnioeuropejska) przy użyciu opcji \f(CW\*(C`\-1252\*(C'\fR. W przypadku innych stron
kodowych można użyć narzędzia dos2unix wraz z \fIiconv\fR\|(1). Iconv potrafi
konwertować między wieloma kodowaniami znaków.
.Sp
Nigdy nie należy używać konwersji \s-1ISO\s0 na plikach tekstowych w
Unicode. Uszkodziłaby pliki kodowane \s-1UTF\-8.\s0
.Sp
Kilka przykładów:
.Sp
Konwersja z domyślnej strony kodowej \s-1DOS\s0 do uniksowego Latin\-1:
.Sp
.Vb 1
\&    dos2unix \-iso \-n in.txt out.txt
.Ve
.Sp
Konwersja ze strony kodowej \s-1DOS CP850\s0 do uniksowego Latin\-1:
.Sp
.Vb 1
\&    dos2unix \-850 \-n in.txt out.txt
.Ve
.Sp
Konwersja ze strony kodowej Windows \s-1CP1252\s0 do uniksowego Latin\-1:
.Sp
.Vb 1
\&    dos2unix \-1252 \-n in.txt out.txt
.Ve
.Sp
Konwersja ze strony kodowej Windows \s-1CP1252\s0 do uniksowego \s-1UTF\-8 \s0(Unicode):
.Sp
.Vb 1
\&    iconv \-f CP1252 \-t UTF\-8 in.txt | dos2unix > out.txt
.Ve
.Sp
Konwersa z uniksowego Latin\-1 do domyślnej strony kodowej \s-1DOS:\s0
.Sp
.Vb 1
\&    unix2dos \-iso \-n in.txt out.txt
.Ve
.Sp
Konwersja z uniksowego Latin\-1 do strony kodowej \s-1DOS CP850:\s0
.Sp
.Vb 1
\&    unix2dos \-850 \-n in.txt out.txt
.Ve
.Sp
Konwersja z uniksowego Latin\-1 do strony kodowej Windows \s-1CP1252:\s0
.Sp
.Vb 1
\&    unix2dos \-1252 \-n in.txt out.txt
.Ve
.Sp
Konwersja z uniksowego \s-1UTF\-8 \s0(Unicode) do strony kodowej Windows \s-1CP1252:\s0
.Sp
.Vb 1
\&    unix2dos < in.txt | iconv \-f UTF\-8 \-t CP1252 > out.txt
.Ve
.Sp
Więcej pod adresem <http://czyborra.com/charsets/codepages.html> oraz
<http://czyborra.com/charsets/iso8859.html>.
.SH "UNICODE"
.IX Header "UNICODE"
.SS "Kodowania"
.IX Subsection "Kodowania"
Istnieją różne kodowania Unicode. Pod Uniksem i Linuksem pliki Unicode są
zwykle kodowane z użyciem \s-1UTF\-8.\s0 Pod Windows pliki tekstowe Unicode mogą być
kodowane w \s-1UTF\-8, UTF\-16, UTF\-16\s0 big-endian, ale przeważnie są kodowane w
\&\s-1UTF\-16.\s0
.SS "Konwersje"
.IX Subsection "Konwersje"
Pliki tekstowe Unicode mogą mieć znaki końca linii systemu \s-1DOS,\s0 Unix lub
Mac, podobnie jak zwykłe pliki tekstowe.
.PP
Wszystkie wersje dos2unix i unix2dos potrafią konwertować pliki kodowane
\&\s-1UTF\-8,\s0 ponieważ \s-1UTF\-8\s0 jest wstecznie zgodne z \s-1ASCII.\s0
.PP
Dos2unix i unix2dos z obsługą Unicode \s-1UTF\-16\s0 potrafią odczytywać pliki
tekstowe kodowane \s-1UTF\-16\s0 little\- oraz big-endian. Aby sprawdzić, czy
dos2unix został zbudowany z obsługą \s-1UTF\-16,\s0 należy napisać \f(CW\*(C`dos2unix \-V\*(C'\fR.
.PP
Pod Uniksem/Linuksem pliki w kodowaniu \s-1UTF\-16\s0 są konwertowane do kodowania
znaków ustawionej lokalizacji. Kodowanie znaków dla lokalizacji można
sprawdzić poleceniem \fIlocale\fR\|(1). Jeśli konwersja nie jest możliwa, wystąpi
błąd, a plik zostanie pominięty.
.PP
Pod Windows pliki \s-1UTF\-16\s0 są domyślnie konwertowane do \s-1UTF\-8.\s0 Pliki tekstkowe
w kodowaniu \s-1UTF\-8\s0 są dobrze obsługiwane zarówno pod Windows, jak i
Uniksem/Linuksem.
.PP
Kodowania \s-1UTF\-16\s0 i \s-1UTF\-8\s0 są w pełni zgodne, konwersja nie spowoduje utraty
żadnej części tekstu. W przypadku wystąpienia błędu konwersji, na przykład w
przypadku błędu w pliku wejściowym \s-1UTF\-16,\s0 plik zostanie pominięty.
.PP
W przypadku użycia opcji \f(CW\*(C`\-u\*(C'\fR, plik wejściowy zostanie zapisany w tym samym
kodowaniu \s-1UTF\-16,\s0 co plik wejściowy. Opcja \f(CW\*(C`\-u\*(C'\fR zapobiega konwersji do
\&\s-1UTF\-8.\s0
.PP
Dos2unix oraz unix2dos nie mają opcji pozwalającej na konwersję plików \s-1UTF\-8\s0
do \s-1UTF\-16.\s0
.PP
Tryby konwersji \s-1ISO\s0 i 7\-bit nie działają na plikach \s-1UTF\-16.\s0
.SS "Znacznik \s-1BOM\s0"
.IX Subsection "Znacznik BOM"
W systemie Windows pliki tekstowe zwykle zawierają znacznik \s-1BOM \s0(Byte Order
Mark), ponieważ wiele programów dla Windows (w tym Notepad) dodaje domyślnie
znaczniki \s-1BOM.\s0 Więcej informacji można znaleźć pod adresem
<http://pl.wikipedia.org/wiki/BOM_(informatyka)>.
.PP
Pod Uniksem pliki Unicode zwykle nie mają znacznika \s-1BOM.\s0 Pliki tekstowe są
traktowane jako kodowane zgodnie z kodowaniem znaków ustawionej lokalizacji.
.PP
Dos2unix potrafi wykryć tylko, czy plik jest w formacie \s-1UTF\-16,\s0 jeśli
zawiera znacznik \s-1BOM.\s0 Jeśli plik \s-1UTF\-16\s0 nie ma tego znacznika, dos2unix
potraktuje plik jako binarny.
.PP
Do konwersji pliku \s-1UTF\-16\s0 bez znacznika \s-1BOM\s0 można użyć opcji \f(CW\*(C`\-ul\*(C'\fR lub
\&\f(CW\*(C`\-ub\*(C'\fR.
.PP
Dos2unix nie zapisuje domyślnie znaku \s-1BOM\s0 w pliku wyjściowym. Z opcją \f(CW\*(C`\-b\*(C'\fR
Dos2unix zapisuje \s-1BOM,\s0 jeśli plik wejściowy zawiera \s-1BOM.\s0
.PP
Unix2dos domyślnie zapisuje znaczniki \s-1BOM\s0 w pliku wyjściowym, jeśli plik
wejściowy ma \s-1BOM.\s0 Aby usunąć \s-1BOM,\s0 można użyć opcji \f(CW\*(C`\-r\*(C'\fR.
.PP
Dos2unix oraz unix2dos zawsze zapisują znaczniki \s-1BOM,\s0 jeśli użyta zostanie
opcja \f(CW\*(C`\-m\*(C'\fR.
.SS "Unicode file names on Windows"
.IX Subsection "Unicode file names on Windows"
Dos2unix has optional support for reading and writing Unicode file names in
the Windows Command Prompt. That means that dos2unix can open files that
have characters in the name that are not part of the default system \s-1ANSI\s0
code page.  To see if dos2unix for Windows was built with Unicode file name
support type \f(CW\*(C`dos2unix \-V\*(C'\fR.
.PP
There are some issues with displaying Unicode file names in a Windows
console.  See option \f(CW\*(C`\-D\*(C'\fR, \f(CW\*(C`\-\-display\-enc\*(C'\fR. The file names may be
displayed wrongly in the console, but the files will be written with the
correct name.
.SS "Przykłady Unicode"
.IX Subsection "Przykłady Unicode"
Konwersja pliku \s-1UTF\-16 \s0(z \s-1BOM\s0) z formatu Windows do uniksowego \s-1UTF\-8:\s0
.PP
.Vb 1
\&    dos2unix \-n in.txt out.txt
.Ve
.PP
Konwersja pliku \s-1UTF\-16LE \s0(bez \s-1BOM\s0) z formatu Windows do uniksowego \s-1UTF\-8:\s0
.PP
.Vb 1
\&    dos2unix \-ul \-n in.txt out.txt
.Ve
.PP
Konwersja z uniksowego \s-1UTF\-8\s0 do \s-1UTF\-8\s0 z \s-1BOM\s0 dla Windows:
.PP
.Vb 1
\&    unix2dos \-m \-n in.txt out.txt
.Ve
.PP
Konwersja z uniksowego \s-1UTF\-8\s0 do \s-1UTF\-16\s0 dla Windows:
.PP
.Vb 1
\&    unix2dos < in.txt | iconv \-f UTF\-8 \-t UTF\-16 > out.txt
.Ve
.SH "GB18030"
.IX Header "GB18030"
\&\s-1GB18030\s0 to standard urzędowy w Chinach. Obowiązkowy podzbiór standardu
\&\s-1GB18030\s0 jest oficjalnym wymaganiem każdego oprogramowania sprzedawanego w
Chinach. Więcej pod adresem <http://en.wikipedia.org/wiki/GB_18030>.
.PP
\&\s-1GB18030\s0 jest w pełni zgodny z Unicode i może być uważany za format
transformacji unikodu. Podobnie jak \s-1UTF\-8, GB18030\s0 jest zgodny z \s-1ASCII.\s0 Jest
także zgodny ze stroną kodową Windows 936, znaną też jako \s-1GBK.\s0
.PP
Pod Uniksem/Linuksem pliki \s-1UTF\-16\s0 są konwertowane do \s-1GB18030,\s0 jeśli
kodowanie dla lokalizacji jest ustawione na \s-1GB18030.\s0 Uwaga: będzie to
działać tylko, jeśli lokalizacja jest obsługiwana przez system. Listę
obsługiwanych lokalizacji można sprawdzić poleceniem \f(CW\*(C`locale \-a\*(C'\fR.
.PP
Pod Windows w celu konwersji plików \s-1UTF\-16\s0 do \s-1GB18030\s0 należy użyć opcji
\&\f(CW\*(C`\-gb\*(C'\fR.
.PP
Pliki w kodowaniu \s-1GB18030\s0 mogą mieć znacznik \s-1BOM,\s0 podobnie jak pliki w
Unicode.
.SH "PRZYKŁADY"
.IX Header "PRZYKŁADY"
Odczyt ze standardowego wejścia i zapis na standardowe wyjście:
.PP
.Vb 2
\&    dos2unix
\&    dos2unix \-l \-c mac
.Ve
.PP
Konwersja i zastąpienie a.txt; konwersja i zastąpienie b.txt:
.PP
.Vb 2
\&    dos2unix a.txt b.txt
\&    dos2unix \-o a.txt b.txt
.Ve
.PP
Konwersja i zastąpienie a.txt w trybie ascii:
.PP
.Vb 1
\&    dos2unix a.txt
.Ve
.PP
Konwersja i zastąpienie a.txt w trybie ascii; konwersja i zastąpienie b.txt
w trybie 7\-bitowym:
.PP
.Vb 3
\&    dos2unix a.txt \-c 7bit b.txt
\&    dos2unix \-c ascii a.txt \-c 7bit b.txt
\&    dos2unix \-ascii a.txt \-7 b.txt
.Ve
.PP
Konwersja a.txt z formatu Mac do formatu uniksowego:
.PP
.Vb 2
\&    dos2unix \-c mac a.txt
\&    mac2unix a.txt
.Ve
.PP
Konwersja a.txt z formatu uniksowego do formatu Mac:
.PP
.Vb 2
\&    unix2dos \-c mac a.txt
\&    unix2mac a.txt
.Ve
.PP
Konwersja i zastąpienie a.txt z zachowaniem oryginalnego znacznika czasu:
.PP
.Vb 2
\&    dos2unix \-k a.txt
\&    dos2unix \-k \-o a.txt
.Ve
.PP
Konwersja a.txt i zapis do e.txt:
.PP
.Vb 1
\&    dos2unix \-n a.txt e.txt
.Ve
.PP
Konwersja a.txt i zapis do e.txt z zachowaniem znacznika czasu e.txt
takiego, jak a.txt:
.PP
.Vb 1
\&    dos2unix \-k \-n a.txt e.txt
.Ve
.PP
Konwersja i zastąpienie a.txt; konwersja b.txt i zapis do e.txt:
.PP
.Vb 2
\&    dos2unix a.txt \-n b.txt e.txt
\&    dos2unix \-o a.txt \-n b.txt e.txt
.Ve
.PP
Konwersja c.txt i zapis do e.txt; konwersja i zastąpienie a.txt; konwersja i
zastąpienie b.txt; konwersja d.txt i zapis do f.txt:
.PP
.Vb 1
\&    dos2unix \-n c.txt e.txt \-o a.txt b.txt \-n d.txt f.txt
.Ve
.SH "KONWERSJA REKURENCYJNA"
.IX Header "KONWERSJA REKURENCYJNA"
Można użyć dos2unix w połączeniu z poleceniami \fIfind\fR\|(1) i \fIxargs\fR\|(1) do
rekurencyjnej konwersji plików tekstowych w strukturze drzewa katalogów. Na
przykład, aby przekonwertować wszystkie pliki .txt w drzewie katalogów
poniżej katalogu bieżącego, należy napisać:
.PP
.Vb 1
\&    find . \-name \*(Aq*.txt\*(Aq |xargs dos2unix
.Ve
.PP
In a Windows Command Prompt the following command can be used:
.PP
.Vb 1
\&    for /R %G in (*.txt) do dos2unix "%G"
.Ve
.SH "LOKALIZACJA"
.IX Header "LOKALIZACJA"
.IP "\fB\s-1LANG\s0\fR" 4
.IX Item "LANG"
Główny język wybiera się zmienną środowiskową \s-1LANG.\s0 Zmienna \s-1LANG\s0 składa się
z kilku części. Pierwsza część to małe litery oznaczające kod języka. Druga
część jest opcjonalna i zawiera kod kraju pisany wielkimi literami,
poprzedzony podkreśleniem. Jest także opcjonalna trzecia część: kodowanie
znaków, poprzedzone kropką. Kilka przykładów dla powłok zgodnych ze
standardem \s-1POSIX:\s0
.Sp
.Vb 7
\&    export LANG=nl               holenderski
\&    export LANG=nl_NL            holenderski, Holandia
\&    export LANG=nl_BE            holenderski, Belgia
\&    export LANG=es_ES            hiszpański, Hiszpania
\&    export LANG=es_MX            hiszpański, Meksyk
\&    export LANG=en_US.iso88591   angielski, USA, kodowanie Latin\-1
\&    export LANG=en_GB.UTF\-8      angielski, Wlk. Brytania, kodowanie UTF\-8
.Ve
.Sp
Pełną listę kodów języków i krajów można znaleźć w podręczniku do gettexta:
<http://www.gnu.org/software/gettext/manual/html_node/Usual\-Language\-Codes.html>
.Sp
W systemach uniksowych do uzyskania informacji dotyczących lokalizacji można
użyć polecenia \fIlocale\fR\|(1).
.IP "\fB\s-1LANGUAGE\s0\fR" 4
.IX Item "LANGUAGE"
Przy użyciu zmiennej środowiskowej \s-1LANGUAGE\s0 można określić listę języków wg
priorytetu, oddzielonych dwukropkami. Dos2unix przyjmuje pierwszeństwo
zmiennej \s-1LANGUAGE\s0 nad \s-1LANG.\s0 Na przykład, najpierw holenderski, następnie
niemiecki: \f(CW\*(C`LANGUAGE=nl:de\*(C'\fR. Aby skorzystać z listy wg priorytetów ze
zmiennej \s-1LANGUAGE,\s0 trzeba najpierw włączyć lokalizację przez ustawienie
zmiennej \s-1LANG \s0(lub \s-1LC_ALL\s0) na wartość inną niż \*(L"C\*(R". Więcej informacji
znajduje się w podręczniku do gettexta:
<http://www.gnu.org/software/gettext/manual/html_node/The\-LANGUAGE\-variable.html>
.Sp
W przypadku wybrania niedostępnego języka, otrzymamy standardowe, angielskie
komunikaty.
.IP "\fB\s-1DOS2UNIX_LOCALEDIR\s0\fR" 4
.IX Item "DOS2UNIX_LOCALEDIR"
Przy użyciu zmiennej środowiskowej \s-1DOS2UNIX_LOCALEDIR,\s0 można nadpisać
ustawienie \s-1LOCALEDIR\s0 z czasu kompilacji. \s-1LOCALEDIR\s0 to katalog używany do
znalezienia plików lokalizacji. Domyślną wartością dla \s-1GNU\s0 jest
\&\f(CW\*(C`/usr/local/share/locale\*(C'\fR. Opcja \fB\-\-version\fR wyświetla używaną wartość
\&\s-1LOCALEDIR.\s0
.Sp
Przykład (dla powłoki \s-1POSIX\s0):
.Sp
.Vb 1
\&    export DOS2UNIX_LOCALEDIR=$HOME/share/locale
.Ve
.SH "WARTOŚĆ ZWRACANA"
.IX Header "WARTOŚĆ ZWRACANA"
W przypadku powodzenia zwracane jest zero. Jeśli wystąpi błąd systemowy,
zwracany jest ostatni błąd systemowy. W przypadku innych błędów zwracane
jest 1.
.PP
Wartość zwracana w trybie cichym to zawsze zero, z wyjątkiem sytuacji
podania błędnych opcji linii poleceń.
.SH "STANDARDY"
.IX Header "STANDARDY"
<http://pl.wikipedia.org/wiki/Plik_tekstowy>
.PP
<http://en.wikipedia.org/wiki/Carriage_return>
.PP
<http://pl.wikipedia.org/wiki/End\-of\-line>
.PP
<http://pl.wikipedia.org/wiki/Unicode>
.SH "AUTORZY"
.IX Header "AUTORZY"
Benjamin Lin <blin@socs.uts.edu.au>; Bernd Johannes Wuebben (tryb mac2unix)
<wuebben@kde.org>; Christian Wurll (dodawanie dodatkowej nowej linii)
<wurll@ira.uka.de>; Erwin Waterlander <waterlan@xs4all.nl> (prowadzący)
.PP
Strona projektu: <http://waterlan.home.xs4all.nl/dos2unix.html>
.PP
Strona SourceForge: <http://sourceforge.net/projects/dos2unix/>
.SH "ZOBACZ TAKŻE"
.IX Header "ZOBACZ TAKŻE"
\&\fIfile\fR\|(1)  \fIfind\fR\|(1)  \fIiconv\fR\|(1)  \fIlocale\fR\|(1)  \fIxargs\fR\|(1)