Jump to content

сек (Unix)

последовательность
Разработчик(и) AT&T Bell Laboratories
Первоначальный выпуск февраль 1985 г .; 39 лет назад ( 1985-02 )
Операционная система Unix , Unix-подобные , Plan 9
Платформа Кросс-платформенный
Тип Команда
Лицензия основные утилиты : GPLv3+

В Unix-подобных компьютерных системах seq — это утилита для генерации последовательности чисел.

seq впервые появился в 8-м издании Research Unix в 1985 году и не был принят другими вариантами Unix (такими как коммерческие Unix или BSD ). Тем не менее, позже он был принят в Plan 9 от Bell Labs , а оттуда был скопирован в некоторые современные потомки BSD, такие как FreeBSD . Другая версия seq была написана в 1994 году Ульрихом Дреппером для GNU и теперь доступна во всех дистрибутивах Linux как часть GNU Core Utilities . Команда доступна в виде отдельного пакета для Microsoft Windows как часть UnxUtils коллекции , состоящей из собственных Win32- портов распространенных GNU Unix-подобных утилит. [1]

Функциональность

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

В самом простом случае использования seq N выводит все целые числа от 1 до N. последовательно Это было удобно, поскольку в то время оболочка Unix, оболочка Bourne не имела примитивов для перебора чисел, а ее команда for могла перебирать только список слов. Поэтому для создания такого списка использовался seq, как в этом примере:

# Remove file1 through file17:
for n in `seq 17`
do
    rm "file$n"
done

seq имел дополнительные параметры для управления началом (а не только концом) числовой последовательности, ее приращением ( числом с плавающей запятой ) и форматированием числа. GNU seq изменил имя и значение параметра формата (с -p на -f) и добавил параметр для управления разделителем между числами (-s, по умолчанию — новая строка).

При наличии других альтернатив (например, expr ) и более поздних оболочках, добавляющих встроенную числовую итерацию, seq сегодня используется реже. В современной оболочке Linux bash приведенный выше пример можно альтернативно записать так:

for n in {1..17}
do
    rm "file$n"
done

и более эффективно, без фактической генерации всей последовательности заранее, поскольку

for ((n=1; n<=17; n++))
do
    rm "file$n"
done
  1. ^ «Собственные порты Win32 некоторых утилит GNU» . unxutils.sourceforge.net .
  1. Страница руководства seq из 8-го издания Unix
  2. Страница руководства seq из FreeBSD
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ecc699e7ebaa45b97303e6ec853a68d7__1645626660
URL1:https://arc.ask3.ru/arc/aa/ec/d7/ecc699e7ebaa45b97303e6ec853a68d7.html
Заголовок, (Title) документа по адресу, URL1:
seq (Unix) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)