Linux славится множеством мощных утилит командной строки, упрощающих жизнь администраторам и пользователям. Однако помимо сугубо практичных инструментов, в мире Linux есть и забавные «пасхальные яйца» – команды, от которых мало пользы в работе, но которые способны поднять настроение и продемонстрировать творческую сторону сообщества open source. В этой статье мы рассмотрим 15 таких так называемых бесполезных команд терминала Linux, знакомых многим гуру и способных удивить новичков.
Каждая из этих команд выполняет какую-нибудь смешную или необычную задачу: рисует в консоли паровоз или аквариум, заставляет компьютер «говорить» или раскрашивает текст в радужные цвета. Мы объясним, что делает каждая команда, как ее установить в популярных дистрибутивах (если она вдруг не установлена по умолчанию) и приведем примеры использования. Неважно, только начинаете вы знакомство с Linux или уже считаете себя терминальным экспертом – познакомьтесь с этими веселыми командами и возможно откроете для себя что-то новое!
sl — паровоз вместо «ls»
Команда sl (Steam Locomotive) — классическая терминальная шутка в Linux. Её создали специально для тех, кто по ошибке набирает sl вместо привычной команды ls (вывод списка файлов). Вместо сообщения об ошибке вы увидите, как по вашему терминалу проезжает ASCII-паровоз!
По умолчанию sl обычно не установлена, но её легко добавить из репозитория. Например, в Debian/Ubuntu достаточно выполнить:
А в Fedora/Red Hat:
После установки наберите в консоли sl и нажмите Enter. Паровоз мигом запыхтит по экрану, оставляя за собой дым из символов.
У sl есть и несколько дополнительных флагов, позволяющих изменить анимацию. Например:
-
sl -l — отображает более длинный поезд;
-
sl -a — поезд «сбивает» вас с ног;
-
sl -F — добавляет эффект «падения» при запуске.
Хотя эта команда не приносит практической пользы, она идеально подходит для шуток и демонстрации креативности Linux-сообщества.
cowsay — говорящая корова в терминале
Если вам хочется, чтобы компьютер поговорил с вами... пусть даже в виде ASCII-коровы, пригодится команда cowsay. Она выводит в консоли забавную картинку коровы (или другого персонажа) с «речевым пузырём», внутри которого отображается заданный вами текст. Проще говоря, cowsay превращает любой ваш текст в реплику, сказанную рисованной коровой. Эта утилита давно стала любимой шуткой среди линуксоидов.
Чтобы воспользоваться cowsay, сначала установите пакет: sudo apt install cowsay (Debian/Ubuntu) или sudo dnf install cowsay (Fedora). После этого введите команду с любым сообщением, например: cowsay Hello, world! – и терминал выдаст вам корову, «говорящую» фразу Hello, world! в рамочке. По умолчанию это корова, но cowsay умеет изображать и других существ. С помощью опции -f можно выбрать фигуру – например, cowsay -f tux покажет пингвина Тукса вместо коровы. Список доступных персонажей можно посмотреть командой cowsay -l. Эта бесполезная команда часто используется вместе с другими: одна из любимых комбинаций – запустить fortune | cowsay, чтобы корова произносила случайную шуточную мудрость.
fortune — генератор случайной мудрости
Любите предсказания из печенья с предсказанием? Команда fortune сделает нечто подобное прямо в терминале Linux. Каждый раз при запуске fortune выводится случайная короткая цитата, шутка или мудрость. База данных этих высказываний обширна, и никогда не знаешь заранее, что попадётся – серьёзное изречение, анекдот или афоризм. Практической пользы немного, но эффект неожиданности и развлекательный момент гарантированы.
Чтобы начать получать «предсказания», установите утилиту fortune (в некоторых дистрибутивах пакет может называться fortune-mod): sudo apt install fortune или sudo dnf install fortune. Затем просто введите fortune и нажмите Enter – в терминале тут же появится случайное изречение. Каждое новое выполнение выдаёт новую фразу. Некоторые пользователи даже настраивают запуск fortune при каждом открытии терминала, чтобы получать дозу мудрости или юмора в начале сеанса. А в сочетании с cowsay результат становится ещё веселее: команда fortune | cowsay покажет вам корову, провозглашающую выпавшую фортуну.
yes — бесконечное согласие
Команда yes – это своеобразный «вечный повторятель». Её единственное занятие – непрерывно выводить строку y (или любую другую заданную вами строку) до тех пор, пока выполнение не будет остановлено. Если запустить yes без параметров, вы получите бесконечный поток строк с символом y, заполняющих экран. Это, пожалуй, самая буквальная иллюстрация понятия «бесполезная команда» – на первый взгляд от yes нет практической пользы, разве что быстро «завесить» терминал повторяющимися строчками.
Тем не менее, у yes есть исторически полезное назначение: она применяется для автоматического подтверждения ответов «yes» там, где программа требует многократного взаимодействия с пользователем. Классический пример – yes | apt install пакет, чтобы установить что-то без подтверждений. В наши дни такие сценарии редки, но yes по-прежнему присутствует практически во всех дистрибутивах Linux как часть пакета coreutils.
Если утилита вдруг отсутствует, установите coreutils через пакетный менеджер. Использование команды предельно простое: yes бесконечно выводит y, а yes No — строчку No (или любой другой переданный аргумент). Остановить выполнение можно сочетанием клавиш Ctrl+C. Ради развлечения или эксперимента можно направить поток yes во вход другой команды, чтобы та получала автоматические ответы – только не забудьте вовремя остановить процесс, иначе он может сильно нагрузить систему.
rev — обратный вывод строк
Как быстро превратить свой текст в зеркальное отражение? Для этого есть команда rev. Её задача проста: она берёт введённую строку и выводит её символы в обратном порядке. Например, если передать ей слово «Linux», на выходе получится «xuniL». rev может работать как с отдельными строками текста, так и с целыми файлами, переворачивая каждую строку задом наперёд. Выглядит занятно, хоть и практической пользы мало – разве что хотите прочитать что-то наоборот.
Специально устанавливать rev обычно не требуется: эта утилита входит в состав базовых пакетов большинства дистрибутивов Linux (например, в пакете util-linux). Чтобы ею воспользоваться, просто введите текст и перенаправьте его через конвейер (pipe) в rev либо укажите имя файла в качестве аргумента. Пример: echo "Hello" | rev выведет olleH. Аналогично, команда rev filename.txt покажет содержимое файла наоборот. Это одна из тех команд, которые существуют скорее для веселья и любопытства – интересно же посмотреть, как звучит фраза, прочитанная с конца к началу!
figlet — текст большими буквами
figlet – легендарная утилита для создания крупных надписей из символов ASCII. Если обычный текст в консоли кажется скучноватым, figlet выведет вашу фразу большими «буквами», составленными из символов. Например, команда figlet Linux отобразит слово “Linux” в виде ASCII-арт баннера. Эта программа существует с начала 90-х и до сих пор радует sysadmin’ов, украшая скрипты и приветственные сообщения.
Для использования figlet сначала установите пакет: sudo apt install figlet (в Debian/Ubuntu) или sudo dnf install figlet (в Red Hat/Fedora). Затем просто введите figlet и следом нужный текст в кавычках. По умолчанию надпись будет выполнена стандартным шрифтом ASCII-арта, но figlet поддерживает множество разных шрифтов и настроек. Можно задать максимальную ширину строки опцией -w (чтобы длинные тексты автоматически переносились), или выбрать другой стиль шрифта через -f. Например: figlet -w 120 "Hello, World!" выведет фразу шириной до 120 символов, а figlet -f slant Linux – напишет “Linux” наклонным шрифтом. Экспериментируйте с figlet, и вы быстро поймёте, насколько эффектно обычный текст может смотреться в терминале.
toilet — расширенная версия figlet
Несмотря на шуточное название, утилита toilet не имеет ничего общего с сантехникой. Это «расширенная» версия figlet, позволяющая выводить ASCII-арт текст с дополнительными эффектами и цветами. С помощью toilet вы можете создавать ещё более красивые баннеры в терминале, изменяя шрифты и раскрашивая символы. Почему разработчики назвали её именно toilet, доподлинно неизвестно, но команду полюбили за возможности, которых нет у figlet.
Установите toilet через пакетный менеджер (sudo apt install toilet или sudo dnf install toilet), затем попробуйте напечатать, например: toilet "Linux". Вы увидите знакомую крупную надпись ASCII, как в figlet. Интересное начинается при использовании опций. Флаг -f позволяет выбрать шрифт (например, toilet -f smblock "Hi" для блочного шрифта), а опция -F добавляет фильтры эффектов. Можно применять несколько фильтров подряд. Например, toilet -f mono12 -F metal "Linux" выведет слово “Linux” металлизированным шрифтом, а toilet -f mono12 -F rainbow -F gay "WOW" раскрасит текст всеми цветами радуги. С toilet можно экспериментировать, добиваясь самых причудливых визуальных результатов в терминале.
cmatrix — эффект «Матрицы» в терминале
Хотите почувствовать себя Нео, глядя в зелёный «цифровой дождь» из фильма «Матрица»? Пакет cmatrix как раз для этого. При запуске cmatrix терминал заполняется непрерывно падающими столбцами зелёных символов, имитируя культовую заставку из «The Matrix». Буквы и цифры непрерывно сменяются, струясь вниз экрана, пока вы не остановите программу. Полезного мало, но смотрится очень эффектно – особенно для поклонников киберпанковской эстетики.
cmatrix не входит в стандартный набор утилит, но доступен в репозиториях (установка: sudo apt install cmatrix / sudo dnf install cmatrix). Запустите команду cmatrix, и анимация стартует; прервать её можно сочетанием Ctrl+C. Утилита поддерживает ряд опций для изменения вида «дождя». Например, флаг -a включает асинхронное падение символов (разнесение по времени), -b делает символы полужирными для более яркого эффекта, а -s замедляет скорость потока. Можно даже изменить цвет символов опцией -C (по умолчанию зелёный). Попробуйте cmatrix -b -C red, и вместо зелёных знаков посыпятся красные. С cmatrix легко превратить ваш терминал в экран прямо из культового фильма, пусть и ненадолго.
lolcat — радужная раскраска вывода
lolcat – утилита, которая раскрашивает вывод текста во все цвета радуги. Название отсылает к интернет-мему про разноцветных котов, и работает команда соответствующе: она берёт любой текст на входе и выводит его, плавно меняя цвет каждого символа. Сама по себе lolcat не генерирует ничего нового – её сила именно в связке с другими программами, чьи результаты она превращает в яркий калейдоскоп.
Чтобы воспользоваться lolcat, установите пакет (sudo apt install lolcat для Debian/Ubuntu или соответствующий пакет в других дистрибутивах). Затем объедините lolcat с любой командой через pipe. Классические примеры: ls -l | lolcat выведет список файлов разноцветно, figlet "Hello" | lolcat напишет слово крупными буквами да ещё и радужной раскраской, а fortune | lolcat выдаст цветной «печеньичный» афоризм. Можно и просто напечатать текст: echo "This is lolcat" | lolcat – и фраза засверкает разными оттенками. Конечно, практической пользы в lolcat мало, но иногда красочно оформленный вывод поднимает настроение, особенно когда хочется оживить скучный терминал.
espeak — озвучивание текста голосом
espeak заставит ваш Linux «заговорить». Это консольный инструмент для синтеза речи, который читает вслух любой заданный ему текст. Конечно, голос у espeak далёк от естественного – скорее напоминает старый роботизированный компьютерный голос – но именно в этом и шарм. Можно заставить систему поздороваться с вами или воспроизвести забавное сообщение через динамики, просто передав фразу в espeak.
Установите программу командой sudo apt install espeak (или sudo dnf install espeak), затем попробуйте: espeak "Привет, как дела?". Если звук настроен, вы услышите, как компьютер произнесёт эту фразу. espeak поддерживает разные языки и голоса – опция -v позволяет выбрать голос. Например, espeak -v en+f3 "Hello, I am your computer" прозвучит женским голосом на английском, а espeak -v ru+m1 "Привет" – мужским голосом на русском. Есть даже шёпот (-v en+whisper) для пугающих эффектов. Команда espeak --voices покажет список доступных голосов. Кроме текста в кавычках, можно озвучить содержимое файла: espeak -f /path/to/file.txt. Несмотря на то, что утилита устаревшая и звучит неестественно, весёлый эффект от её использования гарантирован – особенно если внезапно озвучить что-то неожиданное.
asciiquarium — аквариум в текстовом режиме
Представьте себе аквариум, нарисованный символами – именно это делает утилита asciiquarium. Она запускает в терминале мультяшную сценку: в «воде», обозначенной голубыми буквами, плавают рыбки, колышутся водоросли, проплывают кораблики – и всё это сложено из ASCII-символов. asciiquarium превращает ваш текстовый терминал в мини-аквариум, на который можно залипнуть, наблюдая за передвижениями рыбок.
Чтобы освежить свой экран таким аквариумом, установите asciiquarium из репозиториев (sudo apt install asciiquarium, sudo dnf install asciiquarium) и выполните команду asciiquarium. Анимация начнётся сразу и будет продолжаться бесконечно, пока вы её не остановите. Некоторые клавиши управляют «аквариумом»: R перерисовывает сцену заново (появится новый набор рыбок), P ставит анимацию на паузу, а Q – закрывает программу. Полезности от asciiquarium никакой, но как демонстрация возможностей ASCII-графики и просто милый терминальный «скринсейвер» – эта команда бесподобна.
oneko — котёнок, гоняющийся за курсором
Команда oneko оживит ваш рабочий стол забавным образом: на экране появится маленький нарисованный котёнок, который начнёт преследовать указатель мыши, как будто это мышка. Этот милый «питомец» будет бегать за курсором по всему экрану, пока программа oneko работает. Это старое развлечение из мира UNIX, демонстрирующее, что в Linux есть место не только консольным утилитам, но и забавным графическим игрушкам.
oneko устанавливается стандартно (sudo apt install oneko / sudo dnf install oneko). Для работы требуется графическая среда X11. После запуска команды oneko в терминале, на экране сразу выскочит котик. Попробуйте подвигать мышкой – котёнок будет неотступно следовать за курсором. Остановить работу можно, нажав Ctrl+C в терминале (или закрыв приложение). У oneko есть и варианты: опция -dog заменит кота на собаку, которая гоняется за косточкой, а -tofocus заставит зверька следить не за курсором, а за активным окном. Хотя oneko и не приносит практической пользы, этот резвящийся котик наверняка вызовет улыбку, особенно у коллег, впервые увидевших его на вашем экране.
factor — разложение числа на множители
factor отличается от остальных команд в нашем списке тем, что имеет вполне определённую функцию – математическую, хоть и редкую в повседневной жизни. Эта утилита мгновенно раскладывает указанное целое число на простые множители. То есть, вводя команду factor 360, вы получите ответ 2 2 2 3 3 5 (потому что 360 = 2³ × 3² × 5). В теории, factor может оказаться полезной для любителей математики или при решении головоломок, но среднему пользователю она, откровенно говоря, почти никогда не понадобится.
Тем не менее, factor присутствует в Linux практически везде (обычно это часть пакета GNU coreutils), поэтому вы можете попробовать её прямо сейчас без установки. Просто введите factor и через пробел число, чтобы увидеть его простые множители. Попробуйте, например: factor 384746133 – программа моментально выдаст результат 3 53 2419787 (перемножьте их, и правда получится 384746133). Забавно наблюдать, как быстро компьютер расправляется с такими расчётами. А чтобы придать результату более весёлый вид, можно скомбинировать factor с предыдущими нашими героями: factor 360 | figlet нарисует разложение крупными буквами, а factor 360 | figlet | lolcat ещё и раскрасит ответ в радугу.
xeyes — забавные глазки на экране
Ещё одна бессмысленная, но весёлая графическая безделушка из эпохи X11 – программа xeyes. При запуске xeyes на рабочем столе появится окошко с парой нарисованных глаз. Эти большие глазные яблоки будут следить за движением указателя: куда бы вы ни повели курсор мыши, зрачки будут поворачиваться в ту же сторону. Создаётся впечатление, что компьютер наблюдает за вами шутливым взглядом.
xeyes обычно не установлена по умолчанию, но доступна в репозиториях большинства дистрибутивов (пакет может называться x11-apps или прямо xeyes). Установите её (sudo apt install xeyes / sudo dnf install xeyes) и запустите команду xeyes. На экране отобразятся глазки, которые начнут следить за курсором. Полезность нулевая – разве что развлечься самому или разыграть коллегу, – зато какой олдскульный шарм! Завершить программу можно, закрыв окно с глазами или прервав исполнение в терминале. Учтите, xeyes – очень старая программа, и в современных средах (например, на Wayland без X11) она может не работать. Но на классическом X-сервере эти глазки всё так же забавно пялятся на всё, что вы делаете.
watch "echo -e 'a'" — периодический звуковой сигнал
На десерт – комбинация команд, которая не столько отдельная утилита, сколько хитрый приём. Команда watch умеет периодически запускать указанную ей команду через заданный интервал времени (по умолчанию каждые 2 секунды). Если поручить ей выполнять echo -e 'a', эффект получится забавным: терминал начнёт регулярно издавать звуковой сигнал. Символ a в echo – это «BEL», то есть сигнал системного звонка. Таким образом, watch "echo -e 'a'" будет каждые две секунды запускать echo, который подаёт сигнал «бип». Вы услышите периодическое пикание, пока не остановите watch.
Практического смысла у такого использования watch нет – разве что проверить, работает ли спикер в системе, или подшутить над кем-то. Если запустить эту команду в фоне на чьём-нибудь терминале, компьютер жертвы начнёт загадочно попискивать, вызывая недоумение. Правда, в некоторых эмуляторах терминала звуковой сигнал может быть отключён, и тогда ничего не произойдёт. Но если звук включён, приготовьтесь к настойчивому «динь» каждые пару секунд. Остановить бешеный звонок можно, завершив процесс watch (например, Ctrl+C, если он запущен в вашем терминале). Эта шуточная комбинация напоминает нам, что даже обычные команды Linux можно превратить в источник веселья, если проявить смекалку.
В Linux существует ещё немало забавных утилит и скрытых «пасхалок». Мы рассмотрели лишь 15 наиболее известных «бесполезных» команд, которые, тем не менее, приносят улыбку и делают работу в терминале чуть веселее. Познакомившись с ними, вы не только развлеклись, но и узнали кое-что новое о разнообразии экосистемы Linux. Так что в следующий раз, когда захотите удивить друга или поднять себе настроение за компьютером – смело вспоминайте эти команды и наслаждайтесь их необычным эффектом!