私はサブディレクトリを圧縮して別の場所に送信したいのですが、私が持っている問題はzipコマンドを使うときです。Unixのzipサブディレクトリに親ディレクトリは含まれていません
zip -r /new.zip /Unwanted1/Unwanted2/wanted1/wanted2/file.txt
###unzipped produces the following
/Unwanted1/Unwanted2/wanted1/wanted2/file.txt
###I want
/wanted1/wanted2/file.txt
update:私が圧縮したいディレクトリには、たくさんのネストされたディレクトリがあります。したがって、-r。また、絶対パスを扱うことは素晴らしいことでしょう。古いソリューションは場所についてcdするのに使われましたが、私は本当にそれを気に入らなかっただけです。多分それが最良の(唯一の)方法です。
'-r'は再帰的であることを意味します。本当にそれを使用する必要がある場合は、除外のzipオプションを読んでください。 1つのファイルだけを圧縮したい場合は、適切な親ディレクトリ(あなたの例)./Unwanted1/Unwanted2に移動してから、 'zip new.zip wanted/file.txt'を実行してください。つまり、「入力ファイル名のサブディレクトリ情報の最初のn個のレイヤを破棄する」という意味のzipオプションはありません。がんばろう。 – shellter
あなたの例を編集して以来、かなりの量のゲームが変更されています。人々は通常、そのような絶対的な道を望んでいません。 'zip'の中には、より多くのパストリム/コントロールオプションがあるかもしれませんが、私はそれを疑っています。マニュアルページを読んでください。または、 'tar'に切り替えて、それと同じ長さのマニュアルページを読んでください。また、たとえ深くても、1つのファイルを追加する場合は、-rは必要ありません。 – IcarusNM