8.4.16 gunzipコマンド(圧縮されたファイルを伸長する)
形式
- 【Windows限定】
-
gunzip [-c] [-f] [-k] [-l] [-N] [-n] [-q] [-r] [-t] [-v] [-o 出力先パス名] [-S サフィックス] [対象パス名 ...]
- 【UNIX限定】
-
gunzip [-a] [-c] [-f] [-k] [-l] [-N] [-n] [-q] [-r] [-t] [-v] [-o 出力先パス名] [-S サフィックス] [対象パス名 ...]
機能
圧縮されたファイルを伸長します。
このコマンドでは,次の操作ができます。
操作の種類 |
説明 |
---|---|
伸長 |
圧縮ファイルを伸長します(以降,この操作を伸長操作と呼びます)。 この操作は,-dオプションを指定したgzipコマンドと同じです。 -lオプション,および-tオプションを指定しない場合,伸長操作をします。 伸長操作では,伸長したファイルを作成したあとに,圧縮ファイルを削除します。圧縮ファイルを削除させない方法については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「機能」を参照してください。 |
表示 |
-lオプションを指定することで,圧縮ファイルの情報を表示します(以降,この操作を表示操作と呼びます)。この操作は,-lオプションを指定したgzipコマンドと同じです。 |
検証 |
-tオプションを指定することで,圧縮ファイルを伸長しないで,圧縮ファイルに格納されている圧縮データの整合性を検証します(以降,この操作を検証操作と呼びます)。 この操作は,-tオプションを指定したgzipコマンドと同じです。 |
各操作の内容については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「機能」を参照してください。
環境変数GZIPにgunzipコマンドのオプションを設定することで,コマンド引数に指定しなくてもオプションを使用できます。環境変数GZIPについては,「2.5 環境変数を設定する」を参照してください。
引数
操作オプションの指定
実行する操作を指定します。
次のオプションを指定しないでこのコマンドを実行した場合は,圧縮ファイルを伸長します(伸長操作)。
-l
- --list
-
圧縮ファイルの情報を表示します(表示操作)。
圧縮する前のファイルサイズや圧縮率などの情報を表示します。
-vオプションを同時に指定すると,圧縮ファイルの詳細情報も表示します。
表示内容については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「圧縮ファイル情報の表示」を参照してください。
圧縮する前のファイルサイズの表示では,ファイルサイズが4GB以上の場合,値が正しく表示されません。正しいファイルサイズを表示したい場合は,-tオプションを同時に指定してください。ただし,-tオプションを同時に指定した場合は,表示されるまでに時間が掛かる場合があります。
-t
- --test
-
圧縮ファイルを伸長しないで,圧縮ファイルに格納されている圧縮データの整合性を検証します(検証操作)。
-lオプションと同時に指定した場合は,圧縮データの整合性検証と,圧縮ファイル情報の表示の両方を行います。
ファイル情報の復元動作の指定
ファイル情報の復元動作を指定します。
-Nオプションおよび-nオプションを同時に指定した場合,最後に指定したオプションが有効になります。-Nオプション,-nオプションのどちらも指定しなかった場合,-nオプションが有効になります。-Nオプションまたは-nオプションと,-tオプションを同時に指定した場合,指定を無視します。
なお,伸長操作での最終修正日時の扱いについては,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「ファイルの最終アクセス日時と最終修正日時の扱い」を参照してください。表示操作でのファイル名と最終修正日時の扱いについては,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「圧縮ファイル情報の表示」を参照してください。
-N
- --name
-
- 【伸長操作の場合】
-
伸長するときに作成するファイル名を,圧縮ファイルに格納されているファイル名とします。また,圧縮ファイルに格納されている最終修正日時を,作成したファイルに設定します。圧縮ファイルにファイル名や最終修正日時が格納されていない場合は,-nオプションを指定したときと同じ動作をします。
- 【表示操作の場合】
-
表示する圧縮ファイル情報に,圧縮ファイルに格納されているファイル名と最終修正日時を表示します。
-n
- --no-name
-
- 【伸長操作の場合】
-
伸長するときに作成するファイル名を,圧縮ファイル名から圧縮ファイルの拡張子を取り除いたファイル名とします。また,圧縮ファイルの最終修正日時を作成したファイルに設定します。
- 【表示操作の場合】
-
表示する圧縮ファイル情報に,圧縮ファイル名から圧縮ファイルの拡張子を取り除いたファイル名と,圧縮ファイルの最終修正日時を表示します。
入出力の指定
-c
--stdout
- --to-stdout
-
- 【伸長操作の場合】
-
圧縮データの伸長結果を標準出力に出力します。
-lオプションまたは-tオプションと同時に指定した場合は指定を無視します。
-k
- --keep
-
- 【伸長操作の場合】
-
伸長ファイルを作成したあと,圧縮ファイルを削除しません。
-lオプション,-tオプション,または-cオプションと同時に指定した場合は指定を無視します。
-r
- --recursive
-
対象パス名に指定したパスがディレクトリの場合,ディレクトリおよびサブディレクトリ内の圧縮ファイルを検索します。
Windowsの場合,-rオプションを指定して,パス名に末尾がディレクトリ区切り文字のディレクトリへのシンボリックリンクを指定しても末尾のディレクトリ区切り文字が無視されます。
検索中に遭遇したファイルを圧縮ファイルとして扱うかどうかは,ファイル名の拡張子で決定します。圧縮ファイルとして扱うファイル名の拡張子については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「圧縮ファイルの拡張子の扱い」を参照してください。
ディレクトリのシンボリックリンクは,操作の種類や指定するオプションでリンク先をたどります。ディレクトリのシンボリックリンクを指定したときの動作については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「リンクファイルの扱い」を参照してください。
-o出力先パス名
- --output=出力先パス名
-
- 【伸長操作の場合】
-
指定したパス名で伸長するファイルを作成します。また,伸長操作では,圧縮ファイルが削除されます。伸長操作で-Nオプションを同時に指定した場合,作成する伸長ファイルの最終修正日時には圧縮ファイルに格納されている最終修正日時を使用します。ファイル名は出力先パス名に従います。
このオプションは,次のどれかと同時に指定するとエラー終了します。
-
-cオプション,-tオプション,-lオプションまたは-rオプションを指定する。
-
圧縮ファイルを複数指定する。
-
圧縮ファイルを標準入力から入力する。
- 対象パス名
-
圧縮ファイルのパス名を指定します。
対象パス名に,圧縮ファイル以外のファイルを指定したときの扱いについては,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「圧縮ファイルの拡張子の扱い」を参照してください。
対象パス名は複数指定できます。
対象パス名の指定がない,または対象パス名に「-」を指定した場合は,標準入力から圧縮データを入力します。伸長操作では,標準入力から圧縮データを入力する場合,圧縮データの伸長結果を標準出力に出力します。なお,伸長操作では,標準入力が端末に関連づけられているとエラーとなります。
対象パス名に指定できるファイルの種類は次のとおりです。
-
伸長操作では,通常ファイルだけを指定できます。また,リンクファイルを指定できるかどうかは,指定するオプションによって異なります。リンクファイルを指定したときの動作については「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「リンクファイルの扱い」を参照してください。
-
表示操作,および検証操作では,通常ファイルとリンクファイルを指定できます。
-
-rオプションを指定するときはディレクトリを指定できます。ディレクトリのシンボリックリンクを指定できるかどうかは,操作の種類や指定するオプションによって異なります。ディレクトリのシンボリックリンクを指定したときの動作については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「リンクファイルの扱い」を参照してください。
指定した対象パス名が,操作できるファイルの種類以外のときはエラーとなります。
-
その他の指定
-a
- --ascii
-
- 【UNIX限定】
-
OSが提供するgunzipコマンドとの互換のためのオプションです。
指定しても有効になりません。ただし,標準エラー出力にメッセージ(gunzip: Option -a is ignored on this system)が出力されます。
-f
- --force
-
次の操作を許可します。
【伸長操作の場合】
-
リンクファイルのリンク先をたどります。リンクファイルについては「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「リンクファイルの扱い」を参照してください。
-
作成する伸長後のファイルと同名のファイルがすでに存在する場合,応答要求を行わないで上書きします。
-
操作するファイルのデータを標準入力から入力するとき,標準入力が端末に関連づけられていても,入力を開始します。
-
-S サフィックス
- --suffix=サフィックス
-
指定するサフィックス(任意の文字による文字列)を圧縮ファイルの拡張子として扱います。
- 【伸長操作の場合】
-
拡張子「.gz」,「.tgz」とともに,サフィックスが付いたファイルを圧縮ファイルと見なします。
指定できるサフィックスの長さの範囲は1~30バイトです。サフィックスにマルチバイト文字は使用できません。サフィックスを指定したときの動作については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「圧縮ファイルの拡張子の扱い」を参照してください。
-q
- --quiet
-
メッセージの出力を抑止します。
ただし,次のメッセージは抑止の対象外です。
-
オプション解析のエラーメッセージ
-
伸長操作の場合,伸長後のファイルと同名のファイルがすでに存在したとき,上書きするかどうかを確認するメッセージ
【表示操作の場合】
次の情報を表示しません。
-
ヘッダ行
-
複数圧縮ファイルの合計情報
このオプションの後ろに-vオプションを指定した場合,このオプションの指定は取り消されます。
-
-v
- --verbose
-
次の詳細情報を表示します。
-
伸長操作,および検証操作の場合,操作結果の詳細情報として「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の「表8-12 圧縮操作,伸長操作,検証操作で出力する詳細情報」に示す内容を標準エラー出力に出力します。
-
表示操作の場合,表示する圧縮ファイル情報に,圧縮方式などの詳細情報も表示します。表示する内容については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の項目「圧縮ファイル情報の表示」を参照してください。
-
-rオプションを指定してディレクトリ内のファイルを検索するとき,圧縮ファイル以外のファイルに対して,標準エラー出力に「gunzip: ファイル名: Unknown suffix: ignored」を出力します。
このオプションの後ろに-qオプションを指定した場合,このオプションの指定は取り消されます。
-
終了コード
終了コード |
意味 |
---|---|
0 |
正常終了 |
1 |
エラー終了 伸長操作の場合,伸長後のファイルは作成されていません。 |
2 |
エラー終了 伸長操作の場合,伸長後のファイルは作成されています。後処理でエラーが発生しました。エラーが発生した後処理の内容については,出力されるメッセージを参照してください。 なお,複数ファイルの操作で,終了コード1と2の両方のエラーが発生したときは,終了コードは1が返ります。 |
3 |
エラー終了 不正なオプションを指定しました。 |
次のメッセージが出力される場合は,終了コード1になります。
-
「gunzip: ファイル名: Unknown suffix: ignored」
注意事項
gzipコマンドと共通の注意事項については,「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」を参照してください。gunzipコマンド固有の注意事項を次に示します。
-
このコマンドは,JP1/Advanced Shellが提供するgzipコマンドで作成した圧縮ファイルの操作だけをサポートします。JP1/Advanced Shellが提供するgzipコマンド以外で作成したgzip形式の圧縮ファイルをこのコマンドで操作した場合,正しく伸長,表示,または検証できないことがあります。
-
Windowsの場合,伸長する圧縮ファイルに読み取り専用属性が設定されていると,圧縮ファイルの削除で,ファイルごとに1550ミリ秒の待ち時間が発生します。ワイルドカード指定などによる複数ファイルの指定や,-rオプションを指定してディレクトリ内の複数のファイルを伸長するときは,事前に読み取り専用属性を解除してください。
使用例
gunzipコマンドでの伸長操作の使用例を示します。-lオプション,-tオプションおよびその他の伸長操作については「8.4.17 gzipコマンド(ファイルを圧縮,または圧縮されたファイルを伸長する)」の使用例を参照してください。
-
ファイルを伸長します。
C:\TEMP>%ADSH_OSCMD_DIR%gunzip file001.txt.gz C:\TEMP>%ADSH_OSCMD_DIR%ls file001.txt
-
-kオプションを使用して,圧縮ファイルを残したまま伸長します。
C:\TEMP>%ADSH_OSCMD_DIR%gunzip -k file001.txt.gz C:\TEMP>ls file001.txt file001.txt.gz
-
-cオプションを使用して,圧縮ファイルを残したまま伸長します。また,伸長結果をfile003.txtファイルに出力します。
C:\TEMP>%ADSH_OSCMD_DIR%gunzip -c backup_file003.gz >file003.txt C:\TEMP>ls backup_file003.gz file003.txt
-
-Nオプションを使用して,圧縮する前のファイル名で伸長します。
C:\TEMP>%ADSH_OSCMD_DIR%gunzip -N backup_file003.gz C:\TEMP>ls file003.txt
-
-Sオプションを使用して,「.gz」以外の拡張子の圧縮ファイルを伸長します。
C:\TEMP>%ADSH_OSCMD_DIR%gunzip -S ".gzip" file004.txt.gzip C:\TEMP>ls file004.txt
-
圧縮したアーカイブの伸長結果をtarコマンドに渡してアーカイブを展開します。
C:\TEMP>%ADSH_OSCMD_DIR%gunzip -c DIR002.tar.gz | %ADSH_OSCMD_DIR%tar -xvf - DIR002 DIR002\DIR003 DIR002\DIR003\file004.txt DIR002\DIR003\file005.txt DIR002\file001.txt DIR002\file002.txt DIR002\file003.txt