next up previous
Next: 手軽にできるデータのバックアップ (フロッピーディスク) Up: 無題 Previous: 無題

データの蓄え方

  1. ファイルの圧縮: ファイルを小さくして蓄える
    1. [compress, umcompress] ファイル名がttのファイルがあったとする.そこで
       % compress tt
      
      とすると,元のファイル名に拡張子.Zが付いたファイル tt.Zが でき,ttはなくなる.一般的に元の ファイルがバイナリよりもテキストの方が圧縮率は良い. tt.Zをもとのファイルに戻すには,
       % uncompress tt.Z
      
      とするとttなるファイルができる.
    2. [gizp, gunzip] compress, uncompressと同様に使う.た だし,拡張子は「.Z」ではなく「.gz」となる.gzipはcompress に比べ圧縮率は(場合によるが)かなり良い.gzip (gunzip) は, gzip help (gunzip help)を実行すると使い方の簡単な 説明が表示される.
    3. [lha] これは,MS-DOS上での圧縮プログラムlhaのUnix版 である.使い方はDOS用のlhaと同じである.lhaのみを実行する と使い方の簡単な説明が出る.
  2. 複数のファイル(ディレクトリ)を一つにファイルにまとめる
    1. [tar] 今,ディレクトリssがあるとする.
       % ls ss
      hh      ts      tt      ttt
      
      そこで
       % tar cvf ss.tar ./ss
      ./ss/
      ./ss/ttt
      ./ss/ts
      ./ss/hh
      ./ss/tt
      
      とする.ただし,「cvf」はオプション,「ss.tar」は,まとめ られたファイルの名前(他の名前でも良いが,通例で「ディレクト リ.tar」とすることが多い),「./ss」はまとめるディレクトリ 名(''./''をつけた方が良い).逆に,一つにまとめたファイルを元 に戻すには,
       % tar xvf ss.tar
      ./ss/
      ./ss/ttt
      ./ss/ts
      ./ss/hh
      ./ss/tt
      
      とすれば良い.また,ss.tar中の一部のファイルを取り出したい ときの説明をする.ディレクトリss中に4つのファイルtt, ts, hh, tttがあったとする.このとき,tt, ts, tttのみを取り出し たければ,
       % tar xvf ss.tar ./ss/tt ./ss/ts ./ss/ttt
      
      とするか,
       % tar xvf ss.tar `tar tvf ss.tar | awk '{print $8}' | grep "/ss/t"
      
      などとする. GNUによるtar (当研究室では/usr/local/binにあるtar (which tarをコマンドラインで実行すると確かめることが出来る),huis ではgtar)を使うならば,もっと簡単になる.
       % tar xvf ss.tar "*/t*"
      
      とすれば良い.ただし,最後の項をダブルクォーテーションで括 る必要がある.(なぜだか分かるかな?)

  3. 複数のファイルを蓄えておく時,tarをした後に圧縮しておくと良い.
    1. [tar + compress] ディレクトリssを使って実例を示す.
       % tar cvf ss.tar ./ss
       % compress ss.tar
      
      とするか
       % tar cvf - ./ss | compress > ss.tar.Z
      
      とする.(注意)出来たファイルの名前は,tarした後に圧縮し たことを明記するために,「.tar.Z」を付ける.

      これを元のファイルに戻すには,

       % umcompress ss.tar.Z
       % tar xvf ss.tar
      
      とするか,
       % zcat ss.tar.Z | tar xvf -
      
      とすれば良い.

    2. [tar + gzip] 上のcompressをgzipに置き換え,拡張子を Zの変わりにgzとすれば良い. ただし,zcatはGNUによるもの(/usr/local/bin中のもの)とす る. (注意)MS-DOSのフロッピーに蓄える時には,ss.tar.gzの様に 拡張子が「.tar.gz」とすることが出来ない.そこで,拡張子と して「.tgz」とするある.

    3. GNUのtarを用いるならば,圧縮するとき,
       % tar cvfz ss.tar.gz ss
      
      (これはgzipを使っている.)解凍する時,
        % tar xvfz ss.tar.gz
      
      とすれば良い. また,tt, ts, tttのみを取り出したければ,上述のように
       % tar xvfz ss.tar.gz "*/t*"
      
      とする.


Satoshi Taoka
Tue Nov 14 12:31:22 JST 1995