回答:
私が知っている限り、Zipはファイルの所有権/アクセス許可の保存をサポートしていません。unzipがこれらの権限でファイルを作成するように、umaskを設定してみてください。走る
umask 644
前にunzip
。
umask
これらの許可でzipを作成するように設定することができると言いました。しかし、私は窓でそれを行うことができるとは思わない?
実際、ここでのいくつかの答えは正しくありません。ZIPファイルには、ファイルのアクセス許可も設定できます。(*)以下を使用して、ZIPファイル内のファイルの権限をリストできます。
unzip -Z
ZIPファイルの作成に使用したツールに、アクセス許可が保存されていないか、正しく保存されていない可能性があります。
したがって、ZIPファイルを自分で作成した場合は、ZIPファイルを作成したツールを確認してください。zipする前にパーミッションを設定する方法があるかもしれません(mavenなど)、または元のパーミッションを保持します(しかし、それはパーミッションをサポートするシステムでのみ動作します-つまり、Windowsでは動作しません)。
自分でZIPファイルを作成しなかった場合、唯一のチャンスは、解凍後に正しいアクセス権を設定することです。たとえば、
chmod -R [permissions] [directory]
(*)この機能は、Mavenアセンブリプラグインと組み合わせて使用します。このプラグインでは、ZIPファイルに入るファイルのfileModeを指定できます。
UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler.
Windows / mingwで。現在、Linuxボックスにアクセスできませんが、-Zも機能します。とにかく、ヒントをありがとう!
--no-same-permissions
)をunzipで見るのは本当にクールです。
zipinfo
/ unzip -Z
は推測しかできません。アクセス許可があるかどうかを確認するには、zipinfo -v
/ unzip -Zv
を使用し、「MSDOS以外の外部ファイル属性」を探します。「ファイルシステムまたはオペレーティングシステムの起源」がUNIXである場合、2つの最上位バイトはUNIXのアクセス許可(8進数ではなく16進数)です。