ディレクトリを圧縮するにはどうすればよいですか?


162

ディレクトリを圧縮して、Windows ftpにftpしようとしています。

ディレクトリを圧縮するために見つけることができるすべてのtarコマンドを試しました。大丈夫そうです。次に、それを転送し、Winrarを使用してその内容を表示します。Winrarは、ファイルが破損していると通知し続けます。winrarを使用して他の.gzファイルまたは.bz2ファイルを表示しましたが、何らかの奇妙な理由で動作しません。

ファイルを圧縮して拡張子が.zipになるようにしたいのですが、それでもコンテンツを閲覧しようとすると、ウィンドウとwinrarの両方が破損していると主張します。

他に試してみたいことについて他に提案している人はいますか?


(1)どの正確なtarコマンドを使用していますか?(2)結果のファイルを展開できますか?
djeikyb

7zipを使用してWindowsでファイルを表示してみてください。
オックスウィビ

回答:


282

まあ、おそらくあなたのファイルはFTP転送の前に完全に問題ありません。

残念ながら、おそらく間違ったFTPモードを使用してファイルを転送しています。

FTPには、バイナリモードとASCIIモードの2つのモードがあります。デフォルトでは、ほとんどのクライアントはASCIIモードを使用します。これにより、バイナリファイルが完全に破損します。どのFTPクライアントを使用しているかわかりませんが、たとえばncftpでは、コマンド「binary」を使用してバイナリモードに切り替えることができます。

Ubuntu(または他のほとんどのLinux)を使用してZIPファイルを作成する場合は、を使用しますzip。実行することでUbuntuにインストールできます

sudo apt-get install zip

次に、実行してzipファイルを作成できます

zip -r compressed_filename.zip foldername

関連する注意事項として、FTPは安全でない送信プロトコルであることを知っておく必要があります。たとえば、sftpへの切り替えを検討してください。最小限のOpenSSHポートを含む、Windows用の多くの無料sshサーバーがあります


良い点は通常、クライアント/サーバーに依存して、ASCIIモードとバイナリモードを自動的に検出し、問題がなかったため、潜在的な問題とは考えていませんでした。私も前にzipを実行しましたが、表示しようとするまですべてがうまく見えました。おそらくバイナリ/アスキーの問題が原因です。
dko

とにかくすごい、私はそれがそんなに簡単だったので、私は馬鹿のように感じます。私はそれを知っているべきだった。とにかく、Windows用のSSHに関するヒントをありがとう、最終的に私はそれに切り替えるつもりでしたが、Windows用のFTPはテストおよび開発要因に入れる変数が少ないことを知っています。
-dko

48

Campressionは、tar、zip、p7、さらにはUbuntuのrarを使用して実行できます。rarをアーカイブするには、rarをインストールする必要があります。単に右クリックすると、インストールされたアーカイバで圧縮するためのオプションが表示されます。 ここに画像の説明を入力してください

.zip拡張子に「zip」を使用する場合は、zipのマニュアルを参照してください。tarを使用するためのコマンドラインは次のとおりです。

tar cvzf tarball.tar.gz directory/

1
素晴らしいテーマ!その名前は何ですか?
エリオットダーフィンク14

「quite mode」に「-q」はありますか?
MatheusJardimB

2
@MatheusJardimBはvオプションを削除しますtar czf tarball.tar.gz directory/
Adamアダム

3

並列圧縮を使用したディレクトリの圧縮は、時間を節約する効率的な方法です。pbzip2は、ディレクトリを圧縮するのに役立ちます。

tar cf <outputfile_name> --use-compress-prog=pbzip2 <directory_name>
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.