Как мне сжать каталог?


163

Я пытаюсь сжать каталог и ftp его в Windows FTP.

Я пробовал каждую команду tar, которую я могу найти, чтобы сжать каталог. Кажется, все в порядке. Затем я передаю его и просматриваю его содержимое с помощью Winrar. Winrar постоянно говорит мне, что файл поврежден. Я просматривал другие файлы .gz или .bz2, используя winrar, но по какой-то странной причине не могу заставить его работать.

Я бы предпочел просто сжать файлы, чтобы они имели расширение .zip, но даже тогда, когда я пытаюсь просмотреть его содержимое, Windows и WinRar утверждают, что они повреждены.

У кого-нибудь еще есть предложения, чтобы попробовать что-то еще?


(1) какую именно команду tar вы используете? (2) вы можете распаковать полученный файл?
djeikyb

Попробуйте использовать 7zip для просмотра файла в Windows.
Oxwivi

Ответы:


283

Ну, скорее всего, ваши файлы прекрасно перед передачей по FTP.

К сожалению, вероятно, вы переносите свои файлы, используя неправильный режим FTP.

FTP имеет два режима: двоичный и ASCII. По умолчанию большинство клиентов используют режим ASCII, который полностью разбивает ваши двоичные файлы. Я не знаю, какой FTP-клиент вы используете, но, например, в ncftp вы можете использовать команду «двоичный» для переключения в двоичный режим.

Если вы хотите создавать ZIP-файлы с использованием Ubuntu (или почти любого другого Linux), используйте zip. Вы можете установить его в Ubuntu, запустив

sudo apt-get install zip

Затем вы можете создать ZIP-файл, запустив

zip -r compressed_filename.zip foldername

В связи с этим вы должны знать, что FTP - это небезопасный протокол передачи. Рассмотрим переход на sftp, например. Существует много бесплатных ssh-серверов для Windows, включая минимальный порт OpenSSH .


Хорошая мысль, как правило, я полагался на клиент / сервер, чтобы автоматически определять ascii vs бинарный режим, и у меня не было проблем, поэтому я никогда не думал об этом как о потенциальной проблеме. Я и раньше запускал zip, и все выглядело нормально, пока я не попытался его просмотреть. Вероятно, из-за бинарности / ascii.
dko

Во всяком случае, спасибо, я чувствую себя идиотом, потому что это было так просто. Я должен был знать это. В любом случае, спасибо за совет о ssh для Windows, в конце концов я собирался переключиться на это, но я знаю, что ftp для Windows бросает меньше переменных в фактор тестирования и разработки.
ДКО

48

Кампрессия может быть сделана с использованием tar, zip, p7 и даже rar в Ubuntu. Вам нужно будет установить rar для архивации rar. Простое нажатие правой кнопки мыши дает вам возможность сжатия с установленными архиваторами. введите описание изображения здесь

Если вы хотите использовать «zip» для расширения .zip, вы можете посмотреть руководство по zip. Командная строка для использования tar:

tar cvzf tarball.tar.gz directory/

1
Потрясающая тема! Как это называется?
Эллиот Дарфинк,

есть ли "-q" для "тихий режим"?
MatheusJardimB

2
@MatheusJardimB убрать вариант vtar czf tarball.tar.gz directory/
Адам

3

Сжатие каталогов с использованием параллельного сжатия является эффективным способом экономии времени. pbzip2 может помочь вам сжать каталоги.

tar cf <outputfile_name> --use-compress-prog=pbzip2 <directory_name>
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.