Jump to content

делиться

делиться
Оригинальный автор(ы) Джеймс Гослинг
Разработчик(и) Различные с открытым исходным кодом и коммерческие разработчики разработчики
Операционная система Unix , Unix-подобные , VMS , Windows
Тип Команда
делиться
Расширение имени файла
.шар
Тип формата Формат архива , шелл-скрипт
Открытый формат ? Да [1]

В shar операционной системе Unix ( от «архив оболочки») — это формат архива , созданный с помощью Unix. shar полезность. Файл shar — это тип самораспаковывающегося архива , поскольку это действительный сценарий оболочки , и его выполнение приведет к воссозданию файлов. Для извлечения файлов только стандартная оболочка Unix Bourne sh обычно требуется .

Файлы shar также иногда называют «шархивами» (из «архива /bin/sh»). [2]

Обратите внимание, что команда share не указана в Единой спецификации Unix , поэтому формально она не является компонентом Unix, а является устаревшей утилитой.

Подробности

[ редактировать ]

Хотя формат shar имеет то преимущество, что представляет собой обычный текст , он представляет риск из-за того, что является исполняемым ; [3] по этой причине более старый и более общий формат файла tar обычно предпочтительнее даже для передачи текстовых файлов. GNU предоставляет собственную версию shar в коллекции GNU Sharutils .

программы unshar написаны для других операционных систем, но не всегда надежны; Файлы shar представляют собой сценарии оболочки и теоретически могут делать все, что может делать сценарий оболочки (включая использование несовместимых функций расширенных или похожих оболочек), что ограничивает их полезность за пределами мира Unix.

Недостаток самораспаковывающихся сценариев оболочки (любых, а не только общих) заключается в том, что они могут полагаться на конкретную реализацию программ; архивы оболочки, созданные с помощью более старых версий makeself , [4] например, оригинальный установщик Unreal Tournament для Linux не запускается на bash 3.x из-за изменения в том, как отсутствующие аргументы trap встроенные команды обрабатываются.

История и варианты

[ редактировать ]

Джеймсу Гослингу приписывают написание первой версии утилиты share в 1982 году. [1] : §1  а также написал ранний пример (предположительно 1978-79) этой концепции в виде этого простого сценария оболочки: [5] [6] [7]

# shar -- Shell archiverAR=$1shiftfor i do	echo a - $i	echo "echo x - $i" >>$AR	echo "cat >$i <<'!Funky!Stuff!'" >>$AR	cat $i >>$AR	echo "!Funky!Stuff!" >>$ARdone

следующие варианты шара : Известны [8]

ГНУ shar доступен как отдельный пакет для Microsoft Windows как часть UnxUtils коллекции , состоящей из собственных Win32- портов распространенных GNU Unix-подобных утилит. [9]

Похожие форматы

[ редактировать ]

Версия той же концепции, но для операционной системы VMS , была написана в 1987 году Майклом Беднареком из Мельбурнского института прикладных экономических и социальных исследований в виде сценария DCL , VMS_SHAR.COM. [10] Позже это было поддержано и расширено Джеймсом А. Греем из Xerox . [11] и Энди Харпер из Королевского колледжа Лондона . [12] [13]

makeself (2001–) — это сценарий оболочки, генерирующий самораспаковывающиеся архивы ( *.run, application/x-makeself), используя тот же метод заголовка сценария оболочки. Использование tar исключает возможность прямого использования makeself в виде простого текста, но лучшее сжатие и другие функциональные возможности сделали его более популярным в 21 веке среди поставщиков программного обеспечения, стремящихся упаковывать программное обеспечение Linux. [14]

См. также

[ редактировать ]
  1. ^ Перейти обратно: а б «Утилиты GNU 'share'» . gnu.org . Фонд свободного программного обеспечения . Проверено 8 декабря 2019 г.
  2. ^ "шархиве" . ftp.informatik.rwth-aachen.de . Проверено 02 января 2024 г.
  3. ^ Яблоко (6 июня 1993 г.). «Страница руководства Mac OS X shar(1)» . Яблоко. Архивировано из оригинала 07.11.2009 . Проверено 7 ноября 2009 г.
  4. ^ «Исправить команду «ловушка»» . Svn.icculus.org. 20.11.2000. Архивировано из оригинала 14 июля 2012 г. Проверено 30 августа 2011 г.
  5. ^ уу-бив! Джим (2 апреля 1983 г.). «Re: программа для разделения файлов дистрибутива xlisp» . Группа новостей : net.sources . идентификатор сообщения:bnews.uw-beave.451 . Проверено 27 марта 2017 г.
  6. ^ «Шар: взрыв из прошлого» . Джеймс Гослинг: на Яванской дороге . Архивировано из оригинала 27 марта 2017 года . Проверено 26 марта 2017 г.
  7. ^ Почти идентичный сценарий, «пакет», описан в «Среда программирования UNIX», Керниган и Пайк, 1984, на странице 97.
  8. ^ Дики, Томас Э. «Комментарии к Shar/Utils» . invisible-island.net .
  9. ^ Собственные порты Win32 некоторых утилит GNU.
  10. ^ Майкл Беднарек (9 июня 1987 г.). "шар (вроде) для VMS" . Группа новостей : comp.os.vms . Usenet:   [электронная почта защищена] . Проверено 9 февраля 2008 г.
  11. ^ Джим Грей (8 мая 1988 г.). «VMS_SHARE V6.0» . Группа новостей : comp.os.vms . Usenet:   880508-073131-5929@Xerox . Проверено 9 февраля 2008 г.
  12. ^ Энди Харпер (6 июля 1989 г.). «VMS_SHARE версия 7» . Группа новостей : comp.os.vms . Usenet:   [электронная почта защищена] . Проверено 9 февраля 2008 г.
  13. ^ Энди Харпер (5 июля 1995 г.). «Анонсируем VMS_SHARE 8.5» . Группа новостей : vmsnet.sources.d . Usenet:   [электронная почта защищена] . Проверено 9 февраля 2008 г.
  14. ^ «makeself — Создание самораспаковывающихся архивов в Unix» .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 5dc390bd4036147d153851796c9a1c65__1704206940
URL1:https://arc.ask3.ru/arc/aa/5d/65/5dc390bd4036147d153851796c9a1c65.html
Заголовок, (Title) документа по адресу, URL1:
shar - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)