/usr/bin/cpio
ls | cpio -o > ファイル名 | 複数のファイルを1つのアーカイブファイルとしてまとめます。 |
---|
-o | ファイルのパス名のリストを標準入力から読み込んで、そのファイルを cpio形式で標準出力へコピーします。 |
---|---|
-p | ファイルのパス名のリストを標準入力から読み込んで、条件に応じて、読み込んだファイルを宛先のディレクトリツリーへコピーします。 |
上記の -o、-p オプションのいずれかを指定したあとに、次のオプションを任意の順序で指定できます。
-d | 必要に応じてディレクトリを作成します。 |
---|---|
-E | アーカイブから抽出するファイル名のリストを含む (1 行 1 ファイル名の)入力ファイル(file) を指定します。 |
-f | pattern で指定されたものを除くすべてのファイルを抽出します。 |
ls | cpio -o > file1
find . -depth -print | cpio -o > file1
file1という名前でファイルをアーカイブします。(隠しファイルはアーカイブされません。)
# ls | cpio -o > file1
上記の例のように標準入力をパイプ経由で cpio -o に渡すと、ファイルがグループ化されて1つのアーカイブファイル(../file1)にまとめられます。ファイル名のリストをパイプ経由で cpioに渡すには、lsの代わりに find、echo、catなどを使用できます。ファイルではなくデバイスへ出力先を変更することもできます。(隠しファイルはアーカイブされません。)
ディレクトリ内のファイルをアーカイブファイル(file1)としてまとめます。(隠しファイルもアーカイブされます。)
# find . -depth -print | cpio -o > file1
file1という名前でファイルをアーカイブします。(隠しファイルもアーカイブされます。)findコマンドを使用することによって、ディレクトリ内にあるファイルをアーカイブファイルとしてまとめることが可能です。