Універсальний інструмент для сканування командного рядка на Mac


17

Чи є якийсь інструмент командного рядка, який дозволяє витягувати файли з найбільш відомих типів архіву ? Щось на зразок StuffIt Expander, але без gui.

Відповіді:


15

Починаючи з версії 2.5 відповідно до веб-сайту, Unarchiver має дві утиліти командного рядка:

Підтримувані формати файлів включають Zip, Tar-GZip, Tar-BZip2, RAR, 7-zip, LhA, StuffIt та багато інших більш і менш незрозумілих форматів. [..] Якщо у вас є стислий файл, який Unarchiver не відкриває, будь ласка, опублікуйте помилку на трекері помилок та включіть відповідний файл, і я розберемось, чи можна додати підтримку до нього!

[..]

Є тепер дві утиліти командного рядка доступні, unarі lsar, які можуть бути використані для розпакування і список архівів, відповідно. Вони все ще знаходяться на стадії розробки і не є повноцінними, але вони повинні працювати. Вони доступні у вигляді попередньо складених бінарних файлів для ОС X і Windows на сторінці завантаження , а також можуть бути побудовані на Linux.

Щоб завантажити інструменти командного рядка (не включені до звичайної завантаження Unarchiver!), Перейдіть на сторінку завантаження коду google проекту та виберіть unar0.2.zip(працює з 20 вересня 2010 р.).


Приємно! І він підтримує безліч форматів, як і запитували.
— Ар’ян

1
Я не можу знайти CLI там.
— тиг

1
tig: Ти маєш на увазі, що ти не зміг натиснути на "сторінку завантаження" у другому абзаці, добре цитованому Арханом вище та на "unar0.2.zip"? Тому що це чудово працює для мене.
— Даніель Бек

@tig, перейшовши за посиланням, на яке посилається Даніель, див. утиліти командного рядка unar0.2.zip, unar та lsar для Mac OS X 0.2 (бета-версія) ". Так, як не дивно, що творець unzip-програмного забезпечення поширює власне програмне забезпечення у zip-форматі. ;-) Після розпакування можна трохи допомогти в застосуванні ./unar --helpі./lsar --help
— Арджан,

додав інформацію про завантаження у відповідь
— Даніель Бек

4

Спробуйте 7-Zip . Окрім власного власного формату (.7z), він може працювати з такими розширеннями: ZIP, gzip, bzip2, tar та, у бета-версіях для версії 9, xz. Він також може декомпресувати (лише) у таких форматах: ARJ, CAB, CHM, cpio, DEB, DMG, HFS, ISO, LZH, LZMA, MSI, NSIS, RAR, RPM, UDF, WIM, XAR та Z.

7za.exeВключена версія командного рядка Windows . Для інших платформ версія POSIX з назвою p7zipдоступна в проекті P7ZIP SourceForge , а деякі з цих портів також пов'язані зі сторінки завантаження 7-Zip . На жаль, посилання на Mac здається розірваним, тому для OS X або будуйте його самостійно, або використовуйте MacPorts .

РЕДАКТУВАННЯ. Для версій, які не є Windows, перейдіть на сторінку завантажень. Там ви можете знайти джерело, а також попередньо складені бінарні файли.


Тільки Windows, наскільки я знаю. Питання задає інструменти командного рядка для Mac.
— Ар'ян

4
@Arjan: знайдено версію POSIX p7zip і для неї є макспорт
— tig

@tig, я з’єднав твій коментар у відповідь Джо. Однак я НЕ знаю, чи p7zipпідтримує всі формати, які робить 7-Zip. Якщо хтось знає про двійкове посилання для завантаження, то повідомте нам про це.
— Ар'ян

На жаль, p7zip не повністю обробляє архіви, створені на mac (зі спеціально названими файлами, що зберігають вилки та інші додаткові речі)
— tig

4

Якщо ви випадково використовуєте Homebrew , ви можете встановити atoolта витягти безліч типів архіву, як-от так:

brew install atool
atool -x archive.anything

Припустимо, що відповідні зовнішні програми доступні у вашій системі, вона може обробляти:

.tar.gz, .tgz, .tar.bz, .tbz, .tar.bz2, .tbz2, .tar.Z, .tZ, .tar.lzo, .tzo, .tar.lz, .tlz, .tar.xz, .txz, .tar.7z, .t7z, .tar, .zip, .jar, .war, .rar, .lha, .lzh, .7z, .alz, .ace, .a, .arj, .arc, .rpm, .deb, .cab, .gz, .bz, .bz2, .gz, .bz, .bz2, .Z, .lzma, .lzo, .lz, .xz, .rz, .lrz, .7z,.cpio

atool це сценарій для управління файлами різних типів (tar, tar + gzip, zip тощо).

Основна команда - aunpackце витяг файлів з архіву. Ви коли-небудь витягували файли з архіву, не перевіряючи, чи вони розташовані у підкаталозі чи у верхньому каталозі архіву, внаслідок чого файли розкидані по всьому місцю? aunpackдолає цю проблему, спочатку витягуючи в новий каталог. Якщо в архіві був лише один файл, цей файл переміщується до вихідного каталогу. aunpackтакож не дозволяє помилково перезаписати локальні файли.

Інші надані команди: apack(створити архіви), als(перерахувати файли в архівах) та acat(витягнути файли для стандартного виходу). Оскільки atoolдля обробки архівів викликаються зовнішні програми, не всі команди можуть підтримуватися для певного типу архівів.

atoolідентифікує архіви за їх розширенням. Іноді це неможливо - наприклад, архіви rar зазвичай мають різні числові розширення файлів. У тих випадках, коли atoolне вдається визначити формат, fileвикористовується замість цього. ( atoolможе бути налаштовано не використовувати файл.)


1
Він також доступний через макпорти не тільки через домашню мову, а також можна створити з джерела
— тигр

MacPorts:sudo port install atool
— ab77

4

Ви можете використовувати brew install unarабо, brew install atoolа потім:

unar archive.gz
# or
atool -x archive.gz

"Ви не можете голосувати за свою посаду": D
— Доріан

2

Для типів стиснення та архівації, які Mac OS X знає споконвічно, ви можете просто використовувати open, і він буде викликати "Архів утиліти" (раніше BOMArchiveHelper), як і двічі клацнути по ньому з Finder. Це працює для [pk] zip, gzip, bzip, bzip2, tar, pax, cpio, компрес (.Z) тощо тощо.

Якщо у вас встановлені додатки, які вміють скасовувати інші формати, і вони зареєстрували для цих розширень файлів або magic(5)значень, тоді openкоманда запустить ці програми для обробки цих типів. Звичайно, ви, ймовірно, опинитесь у графічних інтерфейсах цих додатків.


1
Це те, що я зараз використовую, але у нього є деякі недоліки: я не можу вказати такі параметри, як витяг до певної папки, вікно програми вискакує (навіть якщо я запускаю його -g, воно все ще знаходиться під переднім вікном)
— tig
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.