2016-07-12 3 views
0

はフォルダがのzipコマンドのオプション

私は/resources/html/article(CSS/JSファイルを含む)フォルダ

ターミナルコマンド

私は、次のコマンドを実行していましたzip圧縮しますnode.jsにzipファイルを生成して、ソフトウェアユーティリティの動作を忠実に再現します。

cd /resources/html/ 
&& $(which zip) -r article.zip article 

A.私のバージョンは

私は手動でファイル名を変更すると、のがstore.zipからarticle.zipを言わせて、それはフォルダと呼ばれる記事に抽出

私のバージョンがまだに抽出なっている

元のフォルダ名。

B.ソフトウェアユーティリティのバージョン

私は手動でファイル名を変更すると、それはフォルダと呼ばれるユーティリティに抽出し、のはutility.zipからarticle.zipを言わせユーティリティのバージョンは、現在のファイル名のを使用している

アーカイブ。

仮説

私は理由抽出路差を考える、私がアップロードしたときに、サーバーが私のバージョンを受け付けていません、と私は、彼らがアップロードされるときに、ファイル名は、サーバー上の一時名への変更を得るか知っていますそのため、サーバーは抽出されたフォルダーを見つけることができません。

質問:私は、zipファイルを作成する必要がありますどのようにして

は、任意のオプションは、私はそれが非常に似ユーティリティのバージョンだと指定する必要があります。

+0

zipファイルに 'article'というフォルダが含まれている可能性はありますか?だから、 'store.zip/article/files-inside-folder'のようなものでしょう – anishsane

+0

あなたの質問は確かではありません。記事フォルダにはcssとjsフォルダしかありません – user2727195

+0

/resources/html /ディレクトリと同じ名前のディレクトリまたはファイルですか?あなたが記事のディレクトリを持っていたら、article.zipが必要です。ユーティリティのディレクトリがある場合は、utility.zipが必要です。 –

答えて

0

zip -r article.zip articleは、zipアーカイブ内のすべてのパス名にarticle/が含まれます。したがって、解凍すると、.zipファイルの名前に関係なく、article/ディレクトリに解凍します。 .zipファイルの名前には、解凍の結果に何の名前も付けられていません。

ディレクトリ名を削除するには、コマンドラインでzipに渡される名前にそのディレクトリ名が含まれないように、ディレクトリ内からzip操作を行う必要があります。

+0

'cd/path/to/folder'を実行する代わりに、フォルダの" contents "のzipコマンドを発行する方法はありますか?私のコマンドは下にあり、最後にドットがあることに気付き、この 'cd'コマンドを取り除きたい。 – user2727195

+0

' cd/resources/html/article && $(which zip)-r ../article.zip ' – user2727195

+0

いいえzipコマンドには別の場所から操作するオプションはありません。 –

0

私はフォルダの中に入って、を圧縮しました。これはデフォルトの抽出パスをファイル名に変更し、zipファイルを1レベル上に移動したものです。私のコマンドを短縮

cd /resources/html/article 
&& $(which zip) -rp article . 
&& mv article.zip ../article.zip 

(MVを処分した)

cd /resources/html/article 
&& $(which zip) -rp ../article.zip . 
関連する問題