本文に進む 日本−日本語
日本HPホーム 製品とサービス お客様サポート/ ダウンロード ソリューション ご購入の方法
≫ お問い合わせ
詳細検索オプション
日本HPホーム
HP-UX リフアレンス > c

compress(1)

HP-UX 11i v2: 2007 年 12 月
≫ 

テクニカル ドキュメント

フィードバック
ここから本文が始まります

 ≫ 目次

 ≫ 索引

名称

compress, uncompress, zcat, compressdir, uncompressdir ― データの圧縮および展開

構文

ファイルの圧縮

compress [-d] [-f|-z] [-z] [-v] [-c] [-V] [-b maxbits] [file ...]

uncompress [-f] [-v] [-c] [-V] [file ...]

zcat [-V] [file ...]

ディレクトリ サブツリー全体の圧縮

compressdir [options] [directory ...]

uncompressdir [options] [directory ...]

説明

以下のコマンドは、 次に示すようにファイルおよびディレクトリ サブツリーの圧縮および展開を 行います。

compress

適切なLempel-Zivコーディングを使って指定 file のサイズを縮小します。 縮小が可能ならば、指定した各 file は同じ名前の新しいファイルに置き換えられ、ファイル名には接尾辞 .Z が追加されて圧縮ファイルであることを示します。 元の所有権、モード、アクセス、および修正時刻は保存されます。file が指定されなかったか、または - が指定された場合は、 標準入力が圧縮されて標準出力に出力されます。

uncompress

圧縮された file を元の形式に復元します。 生成されるファイルには、元のファイル名、 所有権、およびパーミッションがあり、ファイル名の接尾辞 .Z は削除されます。file が指定されなかったか、または - が指定された場合は、 標準入力が展開されて標準出力に出力されます。

zcat

圧縮された file を元の形式に復元して、その結果を標準出力に送ります。file が指定されなかったか、または - が指定された場合は、 標準入力が展開されて標準出力に出力されます。

compressdir

フロントエンドプロセッサ。 指定した各 directory サブツリーを再帰的にたどり、compress を使用して directory にある各指定ファイルを圧縮します。 生成されるファイルが既存のファイルより小さくなれば、元のファイルは 圧縮ファイルに置き換えられ、ファイル名には接尾辞 .Z が付けられます。 ディレクトリを指定しなければ、圧縮は 現在のディレクトリから始まるすべてのファイルに適用されます。

options には、有効な compress コマンドオプションをどれでも指定できます(これらは compress にそのまま渡されます)。 すべてのファイルの圧縮を強行する場合は、結果が 元のファイルより大きくなるときでも、-f オプションを指定してください。

uncompressdir

compressdir の逆の処理。 圧縮ファイルを元の形式に復元します。options には、有効な uncompress コマンドオプションをどれでも指定できます(これらは uncompress にそのまま渡されます)。

圧縮量は 入力のサイズ、コード当たりの最大ビット数 (maxbits) および共通の副文字列の分散状況によって異なります。 通常、ソースコードや英語文などのテキストは、50 〜 60 パーセント縮小されます。 圧縮は通常、ハフマン(Huffman)コーディング (pack で使用されている) または最適ハフマン(Huffman)コーディング (compact) によって達成される圧縮より良好で、 計算に必要な時間は少なくなります。

オプション

これらのコマンドは、上記の『構文』 で示された組合わせで、次のオプションを認識します。

-d

file を展開します。compress -duncompress と同じです。

-f

file の圧縮を強制的に行ないます。 圧縮できないファイルがある場合でも、 ディレクトリ全体を圧縮する場合に便利です。-f を指定せず、compress をフォアグラウンドで実行する場合には、ユーザーは 既存のファイルをオーバライトするかどうか入力を求められます。

-z

これは -f オプションと同じですが、 ヌル圧縮がある場合は圧縮を強制しない点が異なります。

-v

圧縮した各ファイルの縮小率を説明するメッセージを表示します。

-c

compressuncompress を強制的に標準出力に書き込みます。ファイルの変更はありません。zcat の非破壊的な動作は uncompress -c の動作と同じです。

-V

標準エラーに現在のバージョンとコンパイルオプションを出力します。

-b maxbits

compress アルゴリズムが使用する最大ビット数を指定します。 デフォルトは 16 であり、 範囲は 9 〜 16 の任意の整数とすることができます。

compressA Technique for High Performance Data Compression, Terry A. Welch, IEEE Computer, vol. 17, no. 6 (June 1984)、8-19 ページで 紹介された修正Lempel-Zivアルゴリズムを使用しています。 ファイルに共通の副文字列は最初に、 9ビットコード257以上に置き換えられます。 コード512に達すると、アルゴリズムは10ビットコードに切り換わり、-b フラグで指定された上限に達するまで (デフォルトは 16)、 使用ビットを増やし続けます。

maxbits 上限に到達した後、compress は定期的に圧縮比をチェックします。 圧縮比が上がると、compress は既存のコード辞書を使用し続けます。 ただし、圧縮比が落ちると、compress は副文字列のテーブルを捨て、最初からそれを構築し直します。 これにより、アルゴリズムは、ファイルの次の「ブロック」に適応できます。

-b フラグは uncompress の場合には省略されることに注意してください。 これは、ランダムなデータを復元したり、 圧縮されたデータを再圧縮したりしないように、圧縮時に指定した maxbits パラメータが、マジックナンバーとともに出力時にコード化されるためです。

アクセス制御リスト

データの圧縮および展開を行う際、compress はファイルのアクセス制御リストを保持します。

多言語化対応

環境変数

LC_MESSAGES は、メッセージの表示に使われる言語を指定します。

LC_MESSAGES が環境内で指定されていないか空白文字列に設定されている場合、 未指定または空白の各変数に対して LANG の値がデフォルトとして使われます。 LANG が指定されていないか空白文字列に設定されている場合、 LANG の代わりに デフォルトの "C" が使用されます (lang(5) を参照)。

国際化変数のいずれかが無効な設定を含む場合、compressuncompress、 および zcat はすべての国際化変数が "C" に設定されているように振る舞います。environ(5) を参照してください。

サポートされるコードセット

シングルバイトおよびマルチバイトの文字コードセットがサポートされます。

戻り値

これらのコマンドは次の値を終了時に戻します。

0

正常終了。

2

最後のファイルの圧縮後のサイズが大きい。

1

エラーが発生。

診断

Usage: compress [-f|-z] [-dvcV] [-b maxbits] [file ...]

不正なオプションがコマンド行で指定されました。

Missing maxbits

-b の後には maxbits を指定しなければなりません。

file: not in compressed format

uncompress に指定したファイルは圧縮されていません。

file: compressed with xxbits, can only handle yybits

file は、マシン上の圧縮コードより大きな maxbits 値を処理できるプログラムによって圧縮されました。 より小さな maxbits 値で、ファイルを再圧縮してください。

file: already has .Z suffix -- no change

ファイルは、すでに圧縮済みであるとされています。 ファイルの名称を変更して、もう一度試してください。

file: filename too long to tack on .Z

出力ファイル名は、.Z 接尾辞の付いたソースファイル名ですが、これは ソースファイルが属すファイルシステムには長すぎます。 ソースファイル名を短くして再び試みてください。

file already exists; do you wish to overwrite (y or n)?

出力で既存のファイルを置き換えたい場合には、y と応答してください。さもなければ、n と応答してください。

uncompress: corrupt input

入力ファイルが破壊されたことを意味する SIGSEGV 違反が検出されました。

Compression: xx.xx%

圧縮によって節約される入力のパーセンテージ(-v の場合のみ)。

-- not a regular file: unchanged

入力ファイルが通常のファイルでない場合(例えばディレクトリ)は、 変更されません。

-- has xxother links: unchanged

入力ファイルは、シンボリックリンク以外のリンクを持っています。 変更されません。詳細は、ln(1) を参照してください。

-- has symbolic links: unchanged

入力ファイルにはシンボリックリンクがあります。変更されません。 詳細は、ln(1) を参照してください。

-- file unchanged

圧縮によって節約されません。 入力は変更されません。

zenith という名前のファイルを圧縮して、圧縮情報をターミナルにプリントします。

compress -v zenith

ターミナルディスプレイには、2種類の行のいずれかが表示されます。 その例を示します。

zenith: Compression: 23.55% -- replaced with zenith.Z

これは、圧縮されたファイルが元のファイルより 23.55% 小さくなったことを示します。 また、

zenith: Compression: -12.04% -- file unchanged

は、 ファイルの圧縮を 行うと 12.04% のスペースを追加使用しなければならないことを示します。

以下のコマンドのいずれかをタイプ入力して、圧縮を復元します。

uncompress zenith.Z
compress -d zenith.Z

これにより、ファイル zenith.Z は元の展開された形式および名前に復元されます。

uncompress は、ファイルの指定がなければ標準入力を展開します。 例えば、圧縮されたtarファイルをリストするには次のように指定します。

uncompress -c arch.tar.Z | tar -tvf -

警告

圧縮されたファイルは大容量のメモリーがあるマシン間では使用できますが、 データ処理スペースが小さい (64Kバイト以下) アーキテクチャにファイル転送する場合には、 オプション -b12 を指定する必要があります。

1NFS

ネットワーク化されたファイルのアクセス制御リストは要約されます (stat() によって st_mode の中に戻されるのと同じですが、 新しいファイルにはコピーされません (stat(2) を参照))。

著者

compress は、Joseph M. Orost、Kenneth E. Turkowski、 Spencer W. Thomas、およびJames A. Woodsによって開発されました。

ファイル

*.Z

compress によって作成され、uncompress によって削除される圧縮ファイル

参照

compact(1), pack(1), acl(5)

標準準拠

compress: XPG4

印刷用画面へ
プライバシー 本サイト利用時の合意事項
© 1983-2007 Hewlett-Packard Development Company, L.P.