dlinyj: (Default)
[personal profile] dlinyj
Вот читаю курс по программированию, а там как раз работа с консолью. Ну чем не применить свои знания на практике. Тут как раз выпала оказия: дал я один свой агрегат на фестиваль СС, а Линукс. Там надо было чуток подконфигурить, и чел (не буду палить имя) должен поковыряться потом в конфигах. Надо запускать скрипт. Решил я этим скриптом привет передать данному камраду, с юморком. Запускаешь скрипт "взрослый", а там пасхалка. Поскольку есть шанс, что данный псот прочтётся раньше запуска скрипта, я не буду раскрывать всех карт, а покажу свой вариант.




Для начала надо набить красивый текст. Можно воспользоваться готовой утилитой FIGlet, которая конвертирует текст в красивый аски текст, например вот так:

$ figlet HELLO DLINYJ 
 _   _ _____ _     _     ___    ____  _     ___ _   ___   __  _ 
| | | | ____| |   | |   / _ \  |  _ \| |   |_ _| \ | \ \ / / | |
| |_| |  _| | |   | |  | | | | | | | | |    | ||  \| |\ V /  | |
|  _  | |___| |___| |__| |_| | | |_| | |___ | || |\  | | | |_| |
|_| |_|_____|_____|_____\___/  |____/|_____|___|_| \_| |_|\___/ 



Но что-то результат мне не очень понравился. И я воспользовался сайтом.
Чувачка с тролфейсом рисовал сам, конечно же тоже нагуглил. Нашёл вот тут. Все конвертеры картинок в ASCII оказались... Не могу передать качество навоза.

Набросал текстовый файл, получилось так:



Осталось раскрасить сие дело! Но как? Да очень просто. Есть такой ништяк для управления терминалами, как ESC-последовательности. Все помнят BBS? Вот они ими и раскрашивались, с тех пор ничего не поменялось. Ностальгируем, плачем и читаем маны . В результате в начале файла у меня стала красоваться следующая последовательность (не надо боятся, что всё поплыло, она не влияет на общий результат):

\e[1m\e[41m\e[32m      ___          //и тут дальше часть надписи



Перевожу с ESC-последовательности на русский: сделать жирным (не во всех терминалах работает), подложку красным, текст зелёным. После надписи надо сбросить атрибуты текста, и задать новые. Плюс, чтобы краска "ровно" легла, без лесенок, надо сделать перенос каретки. В результате вторая последовательность будет такой (да, часть тыквы тролфейса):

\e[0m\n\e[103m\e[30m                    ░░░░░░▄▄▄▄▀▀▀▀▀▀▀▀▄▄▄▄▄▄▄



Перевожу: Сбрасываем атрибуты текста, переводим каретку, делаем фон ярко-жёлтым (не во всех терминалах будет работать), текст делаем чёрным (по умолчанию у меня белый).
В самом конце документа надо тоже сбросить атрибуты строчкой

\e[0m\n


При чём сделать надо обязательно с переводом каретки от картинки, а то будет лесенка цвета. В результате получается такой документ.

Дальше дело техники его вывести на экран. Выводится командой

echo -e "$(cat dlinyj)"



Если обзовёте как-то иначе, чем "dlinyj", то вообще не догадаешься что там и зачем. Дальше эту команду можно вставить в любой нужный bash-скрипт. Результ в заходнике.

UPD. Продемонстрирую, что будет если на ставить перенос каретки и не очищать атрибуты после работы

Не так эффектно выглядит...
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

January 2026

S M T W T F S
    123
456 78910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 23rd, 2026 03:26 am
Powered by Dreamwidth Studios