LoginSignup
31
22

More than 5 years have passed since last update.

ディレクトリ構造を無視して圧縮する場合はzipコマンドの-jオプションを使う

Posted at

たとえばディレクトリ/foo/barの直下にa.xml/b.xml/c.xmlという3つのxmlファイルがあり、この3つだけをおさめたzipファイルを作りたいとします。つまり「zipファイルを解凍すると、解凍ディレクトリの直下に3つのxmlファイルが格納されている」という状態にしたいわけです。

さてこのとき思わず次のようなzipコマンドを打ち込みたくなります。

zip /foo/bar/hoge.zip /foo/bar/*.xml

この結果によってディレクトリ/foo/bar直下に生成されたhoge.zipを解凍してみると、ディレクトリ構造が温存されていることがわかります。つまりhoge.zipを解凍すると、まずfooというディレクトリがあり、その直下にbarがあって、そこをさらに潜って初めてa.xml/b.xml/c.xmlが現れます。言い方を変えるとzipファイルには/foo/bar/a.xml, /foo/bar/b.xml, /foo/bar/c.xmlが圧縮されたような形になっています。

これを回避する、つまりディレクトリ構造を無視してファイルだけをzipとして圧縮したい場合は-jオプションを使います。

zip -j  /foo/bar/hoge.zip /foo/bar/*.xml

こうするとhoge.zipを解凍したディレクトリの直下にa.xml/b.xml/c.xmlの3つが格納されています。

31
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
31
22