6.1. 基本的なファイルの管理
6.1.1. ファイルの圧縮と解凍
ファイルの圧縮解凍
ファイルの圧縮解凍を行うコマンドはいくつかあり、gzip, bzip2, xzなどがある。
| gzip | bzip2 | xz | |
|---|---|---|---|
| 圧縮コマンド | gzip | bzip2 | xz | 
| 圧縮率 | 低い | 中 | 高い | 
| 時間 | 短い | 中 | 長い | 
gzipコマンド
ファイルを圧縮と解凍するコマンド。
gzip <ファイル>| オプション | 説明 | 
|---|---|
| -d | 圧縮ファイルを展開 (解凍) | 
| -c | 圧縮ファイルを標準出力へ出力 | 
| -r | ディレクトリ内の全てのファイルを圧縮 | 
| -k | 圧縮前ファイル残す | 
gunzipコマンド
ファイルを解凍するコマンド。 gunzipコマンドは gzip -d と同じ実行結果が得られる。
gunzip <ファイル名>| オプション | 説明 | 
|---|---|
| -c | 出力を標準出力に展開して、元ファイルは変更しない | 
| -f | すでにファイルがある場合は上書きを行い、強制的に解凍 | 
| -r | ディレクトリ内の全てのファイルを再帰的に解凍 | 
bzip2コマンド
gzipよりも処理時間はかかるが圧縮効率の高いコマンド。
bzip2 <オプション> <ファイル>| オプション | 説明 | 
|---|---|
| -d | 圧縮ファイルを展開 ( 解凍 ) | 
| -c | 圧縮ファイルを標準出力へ出力 | 
| -k | 圧縮前ファイル残す | 
xzコマンド
bzip2よりも処理時間はかかるが圧縮効率の高いコマンド。
xz <オプション> <ファイル>| オプション | 説明 | 
|---|---|
| -d | 圧縮ファイルを展開 ( 解凍 ) | 
| -c | 圧縮ファイルを標準出力へ出力 | 
| -k | 圧縮前ファイル残す | 
6.1.2. 圧縮ファイルの閲覧
zcat, bzcat, xzcatなどがある。
| コマンド | 対応拡張子 | 
|---|---|
| zcat | .gz | 
| bzcat | .bz | 
| xzcat | .xz | 
6.1.3. アーカイブの作成と展開
アーカイブとは
アーカイブは複数ファイルをまとめたもの。 ディレクトリ単位で圧縮を行うにはまずディレクトリをアーカイブにする必要がある。
tarコマンド
tarコマンドはファイルやディレクトリを1つのアーカイブファイルにしたり、圧縮/展開するコマンド。
デフォルトで圧縮しないため、tarコマンドで圧縮を行うためには-zオプションや、-jオプションを指定する必要がある。
tar <オプション> <ファイル>| オプション | 説明 | 
|---|---|
| -c | アーカイブの作成 | 
| -x | アーカイブからファイルの取り出し | 
| -t | アーカイブの内容の確認 | 
| -f ファイル名 | アーカイブファイル名の指定 | 
| -z | gzip による圧縮 ・ 展開 | 
| -j | bzip2 による圧縮 ・ 展開 | 
| -J | 7zip による圧縮 ・ 展開 | 
| -v | 詳細な情報の表示 | 
| -u | アーカイブ内にある同じ名前のファイルより新しいものだけを追加 | 
| -r | アーカイブにファイルの追加 | 
| -N | 指定した日付より新しいデータのみを対象とする | 
| -M | 複数デバイスへの分割 | 
| –delete | アーカイブからファイルの削除 | 
cpioコマンド
cpioはファイルをアーカイブファイルにコピーしたり、アーカイブからファイルをコピーできるコマンド。
ls | cpio -o > /tmp/backup| オプション | 説明 | 
|---|---|
| -i オプション パターン | アーカイブからファイルを抽出 | 
| -o オプション | アーカイブの作成 | 
| -p オプション ディレクトリ | ファイルを別のディレクトリにコピー | 
| オプション | 説明 | 
|---|---|
| -A | 既存のアーカイブファイルに追加 | 
| -d | 必要な場合にディレクトリの作成 | 
| -r | ファイルを対話的に変更 | 
| -t | コピーせず、入力内容の一覧表示 | 
| -v | ファイル名の一覧表示 | 
ddコマンド
入力側に指定したファイルからの入力をファイルまたは標準出力に送るコマンド。
dd if=/dev/zero of=/dev/sda bs=446 count=1| オプション | 説明 | 
|---|---|
| if= 入力ファイル | 入力側ファイルの指定 | 
| of= 出力ファイル | 出力側ファイルの指定 | 
| bs= バイト数 | 入出力のブロックサイズの指定 | 
| count= 回数 | 回数分の入力ブロックをコピー |