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
|
.\" {PTM/LK/0.1/29-09-1998/"kompresja i dekompresja danych"}
.\" Tłumaczenie: 29-09-1998 Łukasz Kowalczyk (lukow@tempac.okwf.fuw.edu.pl)
.TH compress 1 local
.SH NAZWA
compress, uncompress, zcat \- kompresuj i dekompresuj dane (wersja 4.1)
.SH SKŁADNIA
.ll +8
.B compress
[
.B \-f
] [
.B \-v
] [
.B \-c
] [
.B \-V
] [
.B \-r
] [
.B \-b
.I limit_bitów
] [
.I "nazwa \&..."
]
.ll -8
.br
.B uncompress
[
.B \-f
] [
.B \-v
] [
.B \-c
] [
.B \-V
] [
.I "nazwa \&..."
]
.br
.B zcat
[
.B \-V
] [
.I "nazwa \&..."
]
.SH OPIS
\fI Uwaga! To tłumaczenie może być nieaktualne!\fP
.PP
.I compress
redukuje rozmiar podanych plików używając adaptywnego kodowania algorytmem
Lempel-Ziv. Zawsze, jeżeli jest to możliwe, do nazwy pliku dodawane jest
rozszerzenie
.B "\&.Z,"
przy zachowaniu informacji o właścicielu pliku, trybie dostępu oraz czasie
dostępu i
modyfikacji. Jeżeli nie podano nazwy żadnego pliku, dane do kompresji
pobierane są ze standardowego wejścia, a po skompresowaniu zapisywane na
standardowe wyjście.
.I compress
kompresuje jedynie zwykłe pliki. W szczególności, ignoruje dowiązania
symboliczne. Jeżeli plik ma wiele twardych dowiązań,
.I compress
nie podda go kompresji, chyba że zostanie uruchomiony z opcją
.BR \-f .
.PP
jeżeli program został uruchomiony w pierwszym planie bez opcji
.BR \-f ,
użytkownik będzie pytany przed nadpisywaniem istniejących plików.
.PP
Skompresowane pliki mogą być odtworzone do normalnej postaci poleceniem
.I uncompress
lub
.IR zcat .
.PP
.I uncompress
uruchamiany jest z listą plików w linii poleceń. Następnie każdy plik,
którego nazwa kończy się rozszerzeniem
.BR "\&.Z"
i w nagłówku pliku znajduje się prawidłowa liczba (magic number) jest
dekompresowany i z jego nazwy usuwane jest rozszerzenie
.BR "\&.Z" .
Zdekompresowny plik będzie miał te same właściwości, co plik skompresowany,
tzn. właściciela, tryb dostępu oraz czas dostępu i modyfikacji.
.PP
Opcja
.B \-c
powoduje, że programy
.IR compress i uncompress
zapisują pliki wyjściowe na standardowe wyjście; w ten sposób oryginalne
pliki są nienaruszane.
.PP
.I zcat
działa tak samo, jak
.I uncompress
.B \-c.
.I zcat
dekompresuje pliki z listy podanej w linii poleceń lub pobiera dane ze
standardowego wejścia, a następnie zapisuje zdekompresowane dane na
standardowe wyjście.
.I zcat
dokonuje dekompresji plików po sprawdzeniu, że w nagłówku pliku znajduje się
właściwa liczba (magic number); nie jest wymagane, aby nazwa pliku miała
rozszerzenie
.BR "\&.Z" .
.PP
Jeżeli podano opcję
.BR \-r ,
.I compress
będzie działał rekurencyjnie. Jeżeli w linii poleceń oprócz nazw plików
podane zostaną nazwy katalogów, pliki w tych katalogach również zostaną
poddane kompresji.
.PP
Opcja
.B \-V
spowoduje wypisanie na standardowe wyjście błędów wersji programu, jak
również opcji preprocesora użytych w trakcie kompilacji. Następnie
dokonywana jest kompresja/dekompresja podanych plików.
.PP
.I compress
używa zmodyfikowanego algorytmu Lempel-Ziv spopularyzowanego w artykule
"A Technique for High Performance Data Compression"
autorstwa Terry'ego A. Welcha,
który ukazał się w
.I "IEEE Computer,"
vol. 17, no. 6 (lipiec 1984), strony. 8-19.
Jednakowe podciągi w pliku są początkowo zastępowane 9-bitowymi kodami o
wartościach większych od 257. Gdy osiągnięta zostanie wartość kodów 512,
algorytm zaczyna używać kodów 10-bitowych, potem 11-bitowych itd. aż do
osiągnięcia limitu podanego w linii poleceń opcją
.BR \-b ,
domyślnie jest to 16 bitów.
.I limit_bitów
musi się zawierać pomiędzy 9 a 16. Wartość domyślna może być zmieniona w
kodzie źródłowym, aby umożliwić działanie programu na komputerach z mniejszą
ilością pamięci.
.PP
Gdy osiągnięty zostanie
.IR limit_bitów ,
.I compress
zaczyna kontrolować współczynnik kompresji. Jeżeli współczynnik jest
zwiększany,
.I compress
kontynuuje używanie bieżącego słownika. Jednakże, jeżeli współczynnik się
zmniejsza,
.I compress
tworzy od nowa tablicę podciągów, co pozwala algorytmowi zaadaptować się do
kolejnej porcji danych.
.PP
Zauważ, że opcja
.B \-b
nie jest używana przez program
.IR uncompress ,
ponieważ parametr
.I limit_bitów
jest zapisywany wraz z kompresowanymi danymi. Zapisywana jest również
właściwa wartość w nagłówku (magic number), aby upewnić się, że nie zostanie
podjęta próba dekompresji przypadkowych danych, lub kompresja danych
wcześniej poddanych kompresji.
.PP
.ne 8
Wydajność kompresji zależy od wielkości danych wejściowych, ilości bitów
używanych w kodach oraz rozmieszczenia w danych jednakowych podciągów. Dane
takie, jak kod źródłowy lub tekst w języku angielskim są redukowane o 50\-60
procent. Osiągany stopień kompresji jest przeważnie dużo większy niż w
kodowaniu Huffmana (używanym przez program
.IR pack ),
lub adaptywnym kodowaniu Huffmana
.RI ( compact ),
kompresja przebiega też szybciej.
.PP
Po podaniu opcji
.B \-v
po skompresowaniu każdego pliku wypisywana jest informacja na temat
osiągniętego stopnia kompresji.
.PP
Kod wyjścia jest normalnie równy 0; jeżeli ostatni plik jest po (próbie)
kompresji większy niż przedtem, kod wyjścia jest równy 2; jeżeli wystąpi
jakiś inny błąd, kod wyjścia jest równy 1.
.SH "ZOBACZ TAKŻE"
pack(1), compact(1)
.SH "DIAGNOSTYKA"
Usage: compress [\-dfvcVr] [\-b maxbits] [file ...]
.in +8
W linii poleceń znalazły się nieprawidłowe opcje.
.in -8
Missing maxbits
.in +8
Po opcji
.B \-b
brakowało parametru.
.in -8
.IR file :
not in compressed format
.in +8
Plik podany jako parametr programu
.I uncompress
nie jest skompresowany.
.in -8
.IR file :
compressed with
.I xx
bits, can only handle
.I yy
bits
.in +8
Plik został skompresowany przez program obsługujący większą ilość bitów
niż program
.I compress
na tym komputerze. Skompresuj plik ponownie z mniejszym parametrem
.IR limit_bitów .
.in -8
.IR file :
already has .Z suffix -- no change
.in +8
Plik z rozszerzeniem nazwy \&.Z nie może być ponownie kompresowany. Zmień
nazwę pliku i spróbuj ponownie.
.in -8
.IR file :
filename too long to tack on .Z
.in +8
Plik nie może być skompresowany, ponieważ jego nazwa jest dłuższa niż 12
znaków. Zmień nazwę pliku i spróbuj ponownie. Ta informacja nie pojawia się
na systemach BSD.
.in -8
.I file
already exists; do you wish to overwrite (y or n)?
.in +8
Odpowiedz "y", jeżeli chcesz nadpisać istniejący już plik wyjściowy lub "n",
jeżeli nie chcesz
.in -8
uncompress: corrupt input
.in +8
Program otrzymał sygnał SIGSEGV co zazwyczaj oznacza, że plik wejściowy jest
uszkodzony.
.in -8
Compression:
.I "xx.xx%"
.in +8
Osiągnięty stopień kompresji (tylko po podaniu opcji
.BR \-v \.)
.in -8
-- not a regular file or directory: ignored
.in +8
Gdy plik wejściowy nie jest zwykłym plikiem lub katalogiem (tzn. jest np.
dowiązaniem symbolicznym, gniazdem, kolejką FIFO, plikiem urządzenia) jest
pozostawiany bez zmian.
.in -8
-- has
.I xx
other links: unchanged
.in +8
Plik wejściowy ma twarde dowiązania i nie może zostać zmieniony. Więcej
informacji znajdziesz w opisie polecenia
.IR ln "(1)."
Użyj opcji
.BR \-f ,
aby wymusić kompresję plików mających twarde dowiązania.
.in -8
-- file unchanged
.in +8
Rozmiar pliku nie zmniejszył się po kompresji. Plik zostanie pozostawiony w
oryginalnej postaci.
.in -8
.SH "PROBLEMY"
Mimo, że skompresowane pliki są kompatybilne na komputerach z dużą ilością
pamięci, dla plików, które będą odczytywane na innych komputerach należy
używać opcji
.BR "\-b \12" ,
ponieważ dekompresja może być niemożliwa na komputerach z mniejszą ilością
pamięci (64KB lub mniej, jak na komputerach serii DEC PDP, lub Intel 80286, etc.)
.PP
Uruchomienie programu z opcją \-r może niekiedy spowodować fałszywe
komunikaty o błędach postaci
.PP
.in 8
"<filename>.Z already has .Z suffix - ignored"
.in -8
.PP
Mogą one zostać zignorowane. Wyjaśnienie znajduje się w komentarzu do
funkcji compdir() w pliku compress.c.
.SH "INFORMACJE O TŁUMACZENIU"
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i
\fImoże nie być aktualne\fR. W razie zauważenia różnic między powyższym opisem
a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie
się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
.IP
man \-\-locale=C 1 compress
.PP
Prosimy o pomoc w aktualizacji stron man \- więcej informacji można znaleźć pod
adresem http://sourceforge.net/projects/manpages\-pl/.
|