File: sort.1

package info (click to toggle)
manpages-pl 20050320-1
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 12,200 kB
  • ctags: 16
  • sloc: makefile: 1,454; perl: 477; sh: 316
file content (419 lines) | stat: -rw-r--r-- 15,092 bytes parent folder | download | duplicates (3)
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
.\" poszerzenie i aktualizacja do GNU textutils 2.0 PTM/WK/2000-IV
.ig
Transl.note: based on GNU man page sort.1 and textutils.info
 
Copyright 1994, 95, 96, 1999 Free Software Foundation, Inc.

Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.

Permission is granted to copy and distribute modified versions of
this manual under the conditions for verbatim copying, provided that
the entire resulting derived work is distributed under the terms of a
permission notice identical to this one.

Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be stated in a
translation approved by the Foundation.
..
.TH SORT "1" FSF "sierpie 1999" "Narzdzia tekstowe GNU 2.0"
.SH NAZWA
sort \- posortuj linie plikw tekstowych
.SH SKADNIA
.TP 6
.B sort
.RB [ \-cgmus ]
.RB [ \-t
.IR separator ]
.RB [ \-o
.IR plik-wyj ]
.RB [ \-T
.IR kat-tymcz ]
.br
.RB [ \-bdfiMnrz ]
.RI [ \fB+\fPpoz1
.RI [ \fB\-\fPpoz2 ]]
.RB [ \-k
.IR poz1 [, poz2 ]]
.br
.RI [ plik ...]
.TP 6
.B sort
.RB [ \-\-help ]
.RB [ \-\-version ]
.SH OPIS
Dokumentacja niniejsza nie jest ju utrzymywana i moe by niedokadna
lub niekompletna.  Autorytatywnym rdem jest obecnie dokumentacja
Texinfo.  Dostp do niej uzyskasz wpisujc w wierszu polece:
.RS
.B pinfo sort
.RE
lub
.RS
.BR "info sort" .
.RE
.PP
Ta strona podrcznika opisuje polecenie \fBsort\fP w wersji GNU.
.PP
.B sort
sortuje, zlepia lub porwnuje wszystkie linie z podanych plikw, lub
standardowego wejcia jeli nie podano adnych.  Nazwa pliku '\-' oznacza
standardowe wejcie.
Domylnie,
.B sort
wypisuje rezultaty na standardowe wyjcie.
.PP
.B sort
ma trzy tryby dziaania: sortowanie (domylnie), zlepianie i sprawdzanie
posortowania.  Nastpujce opcje zmieniaj tryb dziaania:
.TP
.B \-c
Sprawdza czy podane pliki s ju posortowane; jeli nie wszystkie s,
wypisuje komunikat o bdzie i koczy prac z kodem rwnym 1.
.TP
.B \-m
Zlepia podane pliki sortujc je jako grup.  Kady plik wejciowy powinien
by ju posortowany indywidualnie.  \fBsort\fP dziaa zawsze sortujc, a nie
lepic; zlepianie udostpniono poniewa jest ono szybsze w tych
przypadkach, w ktrych dziaa.
.PP
Para linii porwnywana jest jak nastpuje:
Jeli podano jakie pola kluczowe,
.B sort
porwnuje kad par pl, w porzdku podanym w linii komend, wedug
skojarzonych opcji porzdkowania, a znaleziona zostanie rnica albo
przeszukane zostan wszystkie pola.  Wszystkie porwnania wykorzystuj 
porzdek znakw okrelony przez ustawienie narodowe \fBLC_COLLATE\fP,
chyba e podano inaczej.
.PP
Jeli uyto ktrej z globalnych opcji
.BR Mbdfinr ,
ale nie podano pl kluczowych,
.B sort
porwnuje cae linie wedug opcji globalnych.
.PP
W kocu, w ostatniej prbie, kiedy wszystkie porwnywane klucze s rwne
(lub nie podano adnych opcji porzdkujcych),
.B sort
porwnuje linie bajt po bajcie w kolejnoci sklejania zalenej od maszyny.
Ostatnia prba porwnania bierze pod uwag opcj
.BR -r .
Opcja
.B \-s
(stable) wycza ostatni prb porwnania, tak e linie, w ktrych wszystkie
pola s rwnie w porwnaniu zostaj pozostawione w pierwotnej kolejnoci
wzgldnej.  Jeli nie podano adnych pl ani opcji globalnych,
.B \-s
nie wywouje efektw.
.PP
GNU
.B sort
nie ma limitw co do dugoci linii ani ogranicze co do bajtw
dozwolonych w linii.  Dodatkowo, jeli ostatni bajt pliku wejciowego
nie jest now lini, GNU
.B sort
po cichu takow dostawia. Koczcy lini znak nowej linii w porwnywaniu
jest jej czci. Na przykad, bez opcji, przy sortowaniu ASCII, linia
rozpoczynajca si tabulacj zostanie umieszczona przed pust lini, gdy
w porzdku leksykograficznym ASCII znak tabulacji poprzedza znak nowej linii.
.PP
Przy bdzie \fBsort\fP koczy prac z kodem '2'.
.PP
Jeli ustawiono zmienn rodowiskow
.BR TMPDIR ,
.B sort
uywa jej jako katalogu w ktrym naley umieci pliki tymczasowe,
zamiast domylnego /tmp.  Opcja
.BI \-T " kat-tymcz"
jest jeszcze jednym sposobem wybrania katalogu dla plikw tymczasowych;
zastpuje ona ow zmienn rodowiskow.
.PP
Ponisze opcje wpywaj na porzdkowanie linii wyjcia.  Mog by
one okrelone globalnie lub jako cz konkretnego pola kluczowego.
Jeli nie podano adnego pola kluczowego, opcje globalne stosuj si
do porwna caych linii; w przeciwnym razie opcje globalne s dziedziczone
przez pola kluczowe, dla ktrych nie okrelono adnych specjalnych opcji.
Opcje
.BR -b ", " -d ", " -f " i " -i
klasyfikuj znaki zgodnie z ustawieniami narodowymi \fBLC_CTYPE\fP.
.TP
.B \-b
Ignoruje pocztkowe znaki puste podczas szukania kluczy sortowania w
kadej linii.
.TP
.B \-d
Sortuje w porzdku 'ksiki telefonicznej': podczas sortowania ignoruje
wszystkie znaki oprcz liter, cyfr i znakw pustych.
.TP
.B \-f
Podstawia znaki maych liter za odpowiednie znaki duych liter podczas
sortowania tak aby, na przykad, 'b' sortowao si tak samo jak 'B'.
.TP
.B \-g
Sortuje numerycznie, posugujc si standardow funkcj C \fIstrtod\fP,
przeksztacajc przedrostek kadej linii na liczb zmiennoprzecinkow
podwjnej precyzji. Umoliwia to podawanie liczb zmiennoprzecinkowych
w notacji naukowej, jak '1.0e-34' czy '10e100'. Nie zgasza nadmiaru,
niedomiaru czy bdw konwersji. Wykorzystuje nastpujcy porzdek
leksykograficzny:
.IP
* linie nie rozpoczynajce si liczbami (wszystkie uwaane za rwne).
.IP
* wartoci NaN ("Not a Number") w arytmetyce zmiennoprzecinkowej IEEE
w spjnej, ale zalenej od architektury komputera kolejnoci.
.IP
* minus nieskoczono.
.IP
* liczby skoczone w kolejnoci rosncej (z rwnymi -0 i +0).
.IP
* plus nieskoczono.
.PP
Opcji tej naley uywa tylko wtedy, gdy nie ma innej alternatywy; jest
znacznie wolniejsza ni \fB-n\fP i przy konwersji na zmiennoprzecinkowe mona
utraci informacj.
.TP
.B \-i
Ignoruje znaki niedrukowalne (spoza zakresu ASCII 040-176 semkowo, wcznie)
podczas sortowania.
.TP
.B \-M
Kady pocztkowy acuch skadajcy si z dowolnej iloci biaych znakw
plus trzy litery bdce skrtem nazwy miesica jest zamieniany na
DUE litery i porwnywany w porzdku 'JAN' < 'FEB' < ... < 'DEC.'
Przy porwnywaniu nieprawidowe nazwy s mniejsze od poprawnych.
Ustawienie narodowe \fBLC_TIME\fP wyznacza pisowni nazw miesicy.
.TP
.B \-n
Sortowanie numeryczne: kad lini rozpoczyna liczba. Skadaj si na ni
opcjonalne biae znaki, opcjonalny znak \-, oraz zero lub wicej cyfr,
ktre mog by oddzielone separatorami tysicy, plus opcjonalnie wystpujcy
separator dziesitny i zero lub wicej cyfr dziesitnych. Ustawienie narodowe
\fBLC_NUMERIC\fP okrela znak separatora dziesitnego i separatora tysicy.

\fBsort -n\fP wykorzystuje co, co moe by uwaane za niekonwencjonaln metod
porwnywania acuchw reprezentujcych liczby zmiennoprzecinkowe. Zamiast
najpierw zamienia kady acuch na typ 'double' jzyka C a nastpnie
porwnywa ich wartoci, sort wyrwnuje znaki separatora dziesitnego w dwu
acuchach i porwnuje je znak po znaku. Jedn z korzyci z takiego podejcia
jest jego szybko. W praktyce jest to o wiele wydajniejsze ni wykonywanie
dwu odpowiednich konwersji string-double (lub nawet string-integer)
i nastpnie porwnywanie liczb podwjnej precyzji. Dodatkowo, nie wystpuje
tu towarzyszca utrata dokadnoci. Konwersja przed porwnaniem kadego
acucha na typ 'double' ograniczaaby dokadno do okoo 16 cyfr w wikszoci
systemw.

Nie jest rozpoznawany ani pocztkowy znak '+', ani notacja wykadnicza.
Do porwnywania numerycznego takich acuchw naley uy opcji \fB-g\fP.
.TP
.B \-r
Odwraca rezultat porwnania, tak i linie z wikszymi wartociami
klucza pojawiaj si w wyniku wczeniej, a nie pniej.
.PP
Inne opcje to:
.TP
.BI \-o " plik-wyj"
Wypisuje wynik do
.IR plik-wyj ,
a nie na standardowe wyjcie.  Jeli
.I plik-wyj
jest jednym z plikw wejciowych,
.B sort
kopiuje go do pliku tymczasowego przed sortowaniem i wypisaniem wyniku
do
.IR plik-wyj .
.TP
.BI \-t " separator"
Uywa znaku
.I separator
jako separatora pl podczas szukania kluczy sortowania w kadej linii.
Domylnie pola oddzielone s acuchem pustym pomidzy znakami nie
bdcymi biaym znakiem i biaymi znakami.  To znaczy, lini wejcia
' foo bar',
.B sort
rozkada na pola ' foo' i ' bar'.  Separator pl nie jest uwaany
za cz ani pola, ktre go poprzedza ani tego, ktre po nim nastpuje.
.TP
.B \-u
W przypadku domylnym lub opcji
.BR \-m ,
wypisuje tylko pierwsz z sekwencji linii porwnanych jako rwne.  Dla opcji
.B \-c
sprawdza czy adna para kolejnych linii w wyniku porwnania nie jest rwna.
.TP
.RI \fB\-k\fP " poz1" [, poz2 ]
Zalecana, POSIX-owa skadnia okrelania pl sortowania.
Pole jest czci linii pomidzy \fIpoz1\fP i \fIpoz2\fP (lub kocem linii,
jeli pominito \fIpoz2\fP) \fBwcznie\fP.
Pola i pozycje znakw numerowane s poczwszy od 1.
Zatem sortowanie wedug drugiego pola wymagaoby '\fB-k 2,2\fP'.
Poniej znajdziesz wicej przykadw.
.TP
.B \-z
Traktuje wejcie jako zestaw linii zakoczonych bajtem zerowym (znak ASCII NUL
(null)) a nie ASCII LF (koniec linii). Opcja ta moe by przydatna w poczeniu
z `\fBperl -0\fP' lub `\fBfind -print0\fP' i `\fBxargs -0\fP', ktre robi to
samo w celu niezawodnego zachowania dowolnych nazw cieek (nawet zawierajcych
znaki koca linii).
.TP
.IR \fB+\fPpoz1 " [" \fB-\fPpoz2 ]
Przestarzaa, tradycyjna opcja okrelania pl sortowania.
Okrela pole w kadej linii, ktrego naley uy jako klucza sortowanie.
Pole to skada si z czci linii zaczynajcej si na \fIpoz1\fP a do
(ale nie wcznie z) \fIpoz2\fP (albo do koca linii jeli nie podano
\fIpoz2\fP).  Pola i pozycje znakw numerowane s poczwszy od 0.
.PP
Pozycja w polu sortowania w opcjach \fB-k\fP i \fB+\fP ma posta 
.IB f . c\fR,
gdzie \fIf\fP to numer
pola, ktre ma zosta uyte a \fIc\fP to numer pierwszego znaku od
pocztku pola (dla \fB+\fP\fIpoz\fP) albo od koca poprzedniego pola
(dla \fB-\fP\fIpoz\fP).  Cz \fB.\fP\fIc\fP pozycji moe zosta pominita;
w tym przypadku uwaa si j za oznaczajc pierwszy znak
pola.  Jeli podano opcj
.BR \-b ,
cz \fB.\fP\fIc\fP okrelenia pola liczona jest od pierwszego niepustego
znaku pola (dla \fB+\fP\fIpoz\fP) lub ostatniego niepustego znaku stojcego
po poprzednim polu (dla \fB-\fP\fIpoz\fP).
.PP
Argument \fB+\fP\fIpoz\fP lub \fB-\fP\fIpoz\fP moe take zawiera doczon
dowoln z liter opcji
.BR Mbdfinr ,
wwczas dla tego konkretnego pola nie s uywane globalne opcje
porzdkowania.  Opcja
.B \-b
moe by doczona niezalenie do jednej z lub obu czci \fB+\fP\fIpoz\fP i
\fB-\fP\fIpoz\fP okrelenia pola, a jeli zostaa odziedziczona z opcji
globalnych, zostanie doczona do obydwu.
Jeli uyto opcji
.B \-n
lub
.BR \-M ,
co zakada opcj
.BR \-b ,
opcja
.B \-b
stosuje si do zarwno do czci \fB+\fP\fIpoz\fP jak i \fB-\fP\fIpoz\fP
okrelenia pola.  Klucze mog si rozciga na kilka pl.
.PP
Dodatkowo, kiedy GNU
.B sort
wywoany zosta z dokadnie jednym argumentem, rozpoznawane s
nastpujce opcje:
.TP
.B "\-\-help"
Wywietla informacj o stosowaniu programu i dostpnych opcjach, koczy prac.
.TP
.B "\-\-version"
Wywietla numer wersji programu i koczy prac.
.SH ZGODNE Z
.PP
Historyczne (z BSD i System V) implementacje
.B sort
rniy si w interpretacji niektrych opcji, szczeglnie
.BR \-b ,
.BR \-f ,
oraz
.BR \-n .
GNU sort naladuje zachowanie POSIXowe, ktre jest zwykle (ale nie
zawsze!) podobne do zachowania z System V.
Wedug POSIX
.B \-n
nie zakada ju
.BR \-b .
Dla spjnoci, w ten sam sposb zmieniono
.BR \-M .
Moe to wpyn na znaczenie pozycji znakw w okreleniach pl w pewnych
zagmatwanych przypadkach.
Jeli ci to gryzie, rozwizaniem jest dodanie wyranej opcji
.BR \-b .
.SH PRZYKADY
A oto nieco przykadw ilustrujcych rozmaite kombinacje opcji.
Do okrelania kluczy sortowania wykorzystywana jest w nich POSIX-owa
opcja \fB-k\fP zamiast przestarzaej skadni
.BI + poz1 - poz2 \fR.
.PP
* Sortowanie w malejcej (odwrotnej) kolejnoci numerycznej:
.nf
    \fBsort -nr\fP
.fi
.PP
* Sortowanie alfabetyczne, przy pominiciu pierwszych i drugich pl. Posuguje
si pojedynczym kluczem zoonym ze znakw od pocztku trzeciego pola
do koca kadej linii:
.nf
    \fBsort -k3\fP
.fi
.PP
* Sortowanie numeryczne wedug drugiego pola i rozstrzyganie przeszkd przez
.\" resolve ties by sorting
sortowanie alfabetyczne wg trzeciego i czwartego znaku pitego pola.
Znakiem ograniczajcym pola jest ':'
.nf
    \fBsort -t : -k 2,2n -k 5.3,5.4\fP
.fi
Zauwa, e w przypadku napisania '\fB-k 2\fP' zamiast '\fB-k 2,2\fP',
\fPsort\fP wykorzystaby wszystkie znaki poczwszy od drugiego pola,
a skoczywszy na kocu linii jako pierwszy klucz \fInumeryczny\fP.
W wikszoci zastosowa, traktowanie jako numeryczne kluczy zoonych
z wicej ni jednego pola nie daje oczekiwanego wyniku.

Zauwa te, e do okrelnika koca pola dla pierwszego klucza zosta
zastosowany modyfikator \fB-n\fP. Byby rwnowany podaniu '\fB-k 2n,2\fP'
lub '\fB-k 2n,2n\fP'. Wszystkie modyfikatory z wyjtkiem \fBb\fP odnosz si
do odnonego \fIpola\fP, niezalenie od tego czy s doczone do okrelenia
pocztku pola, koca czy obu.
.PP
* Sortowanie pliku hase wedug pitego pola, ignorowane s pocztkowe
biae znaki. Sortowanie linii z rwnymi wartociami pitego pola wedug
numerycznego identyfikatora uytkownika z pola trzeciego:
.nf
    \fBsort -t : -k 5b,5 -k 3,3n /etc/passwd\fP
.fi
Alternatyw jest zastosowanie globalnego modyfikatora numerycznego \fB-n\fP:
.nf
    \fBsort -t : -n -k 5b,5 -k 3,3 /etc/passwd\fP
.fi
.PP
* Utworzenie pliku znacznikw (tags) w kolejnoci sortowania niewraliwej
na wielko liter:
.nf
    \fBfind src -type f -print0 | \\
         sort -t / -z -f | xargs -0 etags --append\fP
.fi
Uycie w tym przypadku '\fB-print0\fP', '\fB-z\fP' i '\fB-0\fP' oznacza, e
cieki zawierajce znaki nowej linii nie bd rozbijane przez operacj
operacj sortowania.
.PP
* Na koniec: do zignorowania zarwno pocztkowych jak i kocowych biaych
znakw mona zastosowa modyfikator \fBb\fP do kocowego okrelnika
pierwszego klucza
.nf
    \fBsort -t : -n -k 5b,5b -k 3,3 /etc/passwd\fP
.fi
lub uy globalnego modyfikatora \fB-b\fP zamiast \fB-n\fP i bezporedniego
\fBn\fP przy okreleniu drugiego klucza:
.nf
    \fBsort -t : -b -k 5,5 -k 3,3n /etc/passwd\fP
.fi
.SH UWAGI
Rne znaczenie numerw pl w zalenoci od uycia opcji
.B -k
stwarza zamieszania.  To wszystko wina POSIX!
.SH "ZGASZANIE BDW"
Bdy prosz zgasza, w jz. ang., do <bug-textutils@gnu.org>.
.SH COPYRIGHT
Copyright \(co 1999 Free Software Foundation, Inc.
.br
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
.SH ZOBACZ TAKE
.BR uniq (1),
.BR comm (1),
.BR ptx (1),
.BR tsort (1),
.BR textutils (1).
.SH OD TUMACZA
Zaktualizowano i poszerzono wg dokumentacji Texinfo dla narzdzi tekstowych
GNU wersji 2.0.