人気コンテンツ今日: |
tarバックアップから一部のディレクトリ・ファイルを取り出すSubmitted by sasaki on 金曜, 2009-01-23 10:20.
朝会社に到着すると、「昨日のバックアップからfooディレクトリ以下のファイルを復活させて欲しい!」と言われた。 毎晩、Webサイトのpublic_htmlを丸ごとtarでバックアップしておいて良かったと思う。 しかし、Webサイトは細かいファイルが約20,000ほどあり、tarで固めたファイルサイズは2GB弱あるので、解凍するにも時間がかかってしまう。
そこで、一部のディレクトリ、あるいはファイルを取り出す方法をメモしておく。 (Solarisでは、/usr/sfw/bin/gtar 等、GNUのtarを使うことをお勧め)
■ディレクトリ名、ファイル名を確認する必要であれば、ファイルの情報を見る。tオプションを使えば、解凍せずにファイル名を一覧できるので便利。 $ tar tvf public_html.tar タイムスタンプの情報が必要なければ、tar tf public_html.tar というように vオプションを省くとシンプルな表示になるのでお勧め。
■あるディレクトリ以下のファイルを取得するfooディレクトリが、public_html/foo/として存在している場合。 $ tar xvf public_html.tar *foo ディレクトリfooの前に*を付けている理由は、 public_html/foo/index.html public_html/foo/bar/index.html public_html/foo/bar/baz/index.html のようにpublic_html/以下に保存されているため。
■ファイルを1つだけ取得するtar tvf public_html.tar で確認して、ファイル名が確実に分かっている場合。 $ tar xvf public_html.tar public_html/foo/bar/index.html
■gzipで固められているtar.gzファイルから一部のディレクトリを戻す実際には、tarではなく、tar.gzファイルから取り出すことも多い。 1. 確認作業 $ gunzip -c public_html.tar.gz | tar tvf -
2. fooディレクトリを抽出する $ gunzip -c public_html.tar.gz | tar xvf - *foo
3. public_html/foo/bar/index.htmlを取り出す $ gunzip -c public_html.tar.gz | tar xvf - public_html/foo/bar/index.html
gunzip の -cオプションを使えば、ファイルに出力せずにtarコマンドへ渡すことができるのでスピーディーに作業を完了させることができる。
|
Webマスターな生活amazon広告英語お勧め教材! 英語の学校でも使っているのですが、1つのストーリーを3分で読めて、内容も面白く、もっと早く出会いたかった本です。 Apple好きで英語も勉強したいならこの一冊! ブログパーツ |