【Linux】アーカイブ形式でまとめたり展開する:cpio

Uncategorized

どーも!marusukeです!

UNIX系システムで古くから使われており、ファイルやディレクトリをアーカイブ形式でまとめたり展開したりするためのコマンドcpioについてです!


cpioコマンドでできること

cpio [オプション] < [ファイルリスト]

cpioコマンドは、UNIX系システムで古くから使われているコマンドで、ファイルやディレクトリをアーカイブ形式でまとめたり展開したりするためのコマンドです。

主にバックアップや復元の用途で使われます。tarに似ていますが、標準入力<と標準出力>を使う点が特徴です。ファイルやディレクトリを探すfindコマンドとパイプ|と組み合わせて使われることが多いです。

cpioには以下の3つの動作モードがあります:

  • コピー作成モード(-o):アーカイブを作成
  • コピー展開モード(-i):アーカイブを展開
  • コピー転送モード(-p):ファイルを別ディレクトリにコピー

cpioコマンドの使用例

# 1. ファイルのリストからアーカイブを作成
find . -name "*.txt" | cpio -o > archive.cpio

# 2. アーカイブの内容を展開
cpio -i < archive.cpio

# 3. ファイルを他のディレクトリにコピー
find . -name "*.txt" | cpio -p /tmp/backup

cpioコマンドのオプション

オプション意味
-oアーカイブを作成する(”copy-out” モード)
-iアーカイブを展開する(”copy-in” モード)
-pファイルを別のディレクトリにコピー(”pass-through” モード)
-v詳細な出力を表示(verbose)
-dディレクトリが存在しない場合は作成する
--no-preserve-owner所有者情報を保持しない(通常root以外で使う)
-u既存ファイルを上書きする
--helpヘルプを表示する

🔰 補足:アーカイブとは?
複数のファイルやディレクトリを1つのファイルにまとめたもの。バックアップや転送に便利です。


以上です!

ここまで読んでいただきありがとうございました!

コメント

タイトルとURLをコピーしました