удача (Unix)
Эта статья нуждается в дополнительных цитатах для проверки . ( октябрь 2010 г. ) |
Оригинальный автор(ы) | Кен Арнольд |
---|---|
Первоначальный выпуск | 1979 год |
Репозиторий | |
Написано в | С |
Операционная система | Unix , Unix-подобные , Plan 9 , Inferno |
Тип | Команда |
Лицензия | План 9: МОЯ лицензия |
fortune
— программа, отображающая псевдослучайное сообщение из базы котировок.Ранние версии программы появились в версии 7 Unix в 1979 году. [1] Наиболее распространенной версией в современных системах является BSD. fortune
, первоначально написанный Кеном Арнольдом . [2] Раздачи с предсказаниями обычно сопровождаются набором тематических файлов, содержащих высказывания, подобные тем, что встречаются на печеньях с предсказаниями (отсюда и название), цитаты известных людей, шутки или стихи.
fortune
преимущественно встречается в Unix-подобных системах, но существуют клиенты и для других платформ. [3] Часто пользователи текстовых терминалов Unix помещают эту команду в .profile
или .logout
файлы для отображения их при входе в систему и выходе из системы соответственно. Он также используется для создания ввода текста для определенных режимов XScreenSaver . можно передать удачу В команду Cowsay , чтобы добавить диалогу больше юмора.
Содержание
[ редактировать ]Большинство систем Unix используют состояния, которые в значительной степени ориентированы на базу пользователей Unix, и поэтому содержат много непонятных шуток о информатике и компьютерном программировании . Другие предпочтительные источники включают цитаты из научной фантастики ( «Звездный путь» , «Кибериада» , «Доктор Кто» , «Автостопом по Галактике » и т. д.), «Зиппи-булавка» и сочинений Амброуза Бирса и Дэйва Барри . [4] Большинство сборников предсказаний также включают в себя широкий спектр более традиционных цитат, шуток и других коротких отрывков. Некоторые дистрибутивы содержат «наступательные» изречения, требующие -a
или -o
параметры, которые будут переданы на просмотр. Эти состояния часто включают в себя грубый юмор и ненормативную лексику, личные нападки и противоречивые комментарии о религии. Иногда они предоставляются другим пакетом, однако, начиная с FreeBSD 10.0, оскорбительные высказывания были полностью удалены. [5] По состоянию на ноябрь 2017 года цитаты (за исключением советов, касающихся работы системы) были полностью удалены из FreeBSD после жалоб пользователей на содержание цитат Адольфа Гитлера в некоторых файлах. [6] Точные состояния различаются в зависимости от типа Unix, однако, похоже, существует сильное совпадение между файлами состояний FreeBSD и OpenBSD . Файлы состояний Плана 9 кажутся намного короче, многие из них занимают всего одну строку, а «наступательное» изречение намного сильнее. Большинство дистрибутивов Linux, таких как Debian (и его производные ), выбирают состояние FreeBSD для включения в свои пакеты состояния, которые можно установить через менеджер пакетов.
Цель
[ редактировать ]Одно из включенных состояний из сборника гёдельских гаданий о fortune
сам по себе резюмирует цель программы:
Has anyone realized that the purpose of the fortune cookie program is to
defuse project tensions? When did you ever see a cheerful cookie, a
non-cynical, or even an informative cookie?
Perhaps inadvertently, we have a channel for our aggressions. This
still begs the question of whether the cookie releases the pressure or only
serves to blunt the warning signs.
Long live the revolution!
Have a nice day.
Оригинал fortune
Программа может использоваться для более общей задачи извлечения случайной строки из обычного текстового файла. [7] Однако в большинстве современных Unix-систем fortune
не могут быть использованы таким образом, поскольку они используют специальный формат файлов для файлов состояний, позволяющий использовать многострочные афоризмы.
Файлы состояния
[ редактировать ]Обычные версии fortune
используйте два файла для каждого списка цитат: текстовый файл с цитатами, каждый из которых разделен символом «%» на отдельной строке, и файл данных с произвольным доступом, генерируемый strfile
(1) программа. Альтернативные реализации, в том числе предназначенные для отображения на веб-страницах, обычно используют только текстовый файл.
Общие варианты
[ редактировать ]Существует несколько распространенных опций, которые меняют поведение версий Fortune, запускаемых из командной строки:
Вариант | Действие |
---|---|
-a | Выбирайте из всех баз данных, независимо от того, считаются они «оскорбительными» или нет. |
-e | Сделать вероятность выбора файла с предсказанием равной вероятности выбора всех других файлов. |
-f | Распечатайте список всех файлов с предсказаниями, которые могли быть найдены, но не распечатывайте состояние. |
-i | При использовании с -m , сделать поиск по регулярным выражениям нечувствительным к регистру |
-l | Используйте только цитаты, длина которых превышает длину, указанную с помощью -n или 160 символов, если -n не используется |
-m [pattern] | Распечатать все состояния, соответствующие регулярному выражению, указанному в [pattern] |
-n [length] | Переопределить длину, используемую -l и -s для определения «длинных» и «коротких» сообщений (по умолчанию 160 символов) |
-o | Выбирайте только из «наступательных» баз данных |
-s | Используйте только цитаты короче длины, указанной с помощью -n или 160 символов, если -n не используется. |
-w | Подождите некоторое время, прежде чем прекратить действие; полезно в ситуациях, когда нужно прочитать предсказание до очистки экрана |
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ "V7/usr/src/games/fortune.c" . tuhs.org . Проверено 10 февраля 2024 г.
- ^ «[base] Содержимое /head/usr.bin/fortune/fortune/fortune.c» . svnweb.freebsd.org . Проверено 15 сентября 2018 г.
Этот код получен из программного обеспечения, предоставленного в Беркли Кеном Арнольдом.
- ^ «Баночка с файлами удачи» . Fortunes.cat-v.org .
- ^ «Исходники Debian: Fortune 1:1.99.1-7, папка «datfiles»» . источники.debian.org . Проверено 15 сентября 2018 г.
- ^ "Фортуна - журнал удаления" . FreeBSD СВН . FreeBSD. 12 марта 2013 г. Проверено 14 июня 2014 г.
- ^ «[базовая] Редакция 325828» . svnweb.freebsd.org . 14 ноября 2017 г. Проверено 14 апреля 2018 г.
- ^ Том Дафф. «RC-документация» . plan9.bell-labs.com . Архивировано из оригинала 8 сентября 2014 г.
Сначала программа угадывает местоположение (в
$lab
) с помощьюfortune
программа для выбора случайной строки из списка местоположений.
Внешние ссылки
[ редактировать ]- Plan 9 , том 1 Руководство программиста –
- для Linux по играм Руководство -
- PHP-версия программы Fortune
- Страница руководства для оригинальной команды Fortune(6) в Unix .
- Сопровождаемая версия исходного кода Fortune-Mod — на GitHub с новыми выпусками
- ftp://ftp.ibiblio.org/pub/linux/games/amusements/fortune/ — исходный код программы Fortune-Mod
- Вики, содержащая все оригинальные ненаступательные состояния.
- Современная база данных состояний, ориентированная на цветной терминал.
- Дополнение к модулю удачи для предсказаний, связанных с математикой.
- Портативная и полная реализация на Python , распространяемая со всеми классическими и историческими файлами cookie.