Как считывать функциональные клавиши в Bash
Разбираем обработку стрелок, Home, End и F1–F12 в интерактивном Bash-скрипте. Функция GET_KEY переводит многобайтные управляющие последовательности терминала в hexadecimal-коды.
Фото: Mizuno K / Pexels
← Все темы
Материалы для разработчиков: практики программирования, DevOps, автоматизация инфраструктуры, CI/CD, Linux и self-hosted решения.
Разбираем обработку стрелок, Home, End и F1–F12 в интерактивном Bash-скрипте. Функция GET_KEY переводит многобайтные управляющие последовательности терминала в hexadecimal-коды.
Несколько способов вывести повторяющуюся строку в Bash: собственная функция repeat, seq, printf и tr. Разбираем параметры функции, двойное тире printf и компактные однострочные команды.
Создаём доверенный локальный центр сертификации и выпускаем SSL-сертификаты для localhost и внутренних доменов через mkcert. Настраиваем Windows, WSL, Scoop и общий CAROOT.
Разбираем устройство разделяемых библиотек Linux, их полные имена, soname и компоновочные ссылки. Смотрим правила major, minor и patch, создаём библиотеку через gcc и проверяем зависимости с ldconfig и ldd.
Знаешь это чувство, когда ждёшь регресс дольше, чем сам работаешь? У меня рантайм был 34 минуты, и две трети времени уходило на очистку QA-стенда. Решение пришло через Docker и Testcontainers — теперь тесты летят за 14 минут, а …
Однажды я вручную гонял регресс 5 недель. Больше я так не хочу. Я построил фреймворк, который за 30 минут прогоняет то, на что раньше уходил месяц. Но главное — на этапе проектировки запросов мы нашли столько дефектов в SOAP API, …
Часто слышу, что автоматизировать sftp на Windows XP‑10 невозможно без кучи сторонних утилит. На деле всё проще. Я разобрался, как затащить sftp с ключами на такие системы. Самое смешное — WinSCP пришлось настроить так, чтобы он …
Я пробовал разные инструменты, но только less позволил мне объединить просмотр и поиск в одном окне. Я могу прыгать по строкам, искать IP‑адреса и мгновенно возвращаться в режим слежения нажатием SHIFT+F. Это экономит кучу времени …
VSCode бесит своей тяжестью и вечными обновлениями. Neovim — настройка ради настройки. А ZED спустя полгода превратился в золотую середину. Лёгкий, быстрый. Память не ест, баги пофиксили, vim-режим уже родной. Если ещё не пробовал …
Я перепробовал пять редакторов и каждый меня бесил. Typora платный, Notion дохнет без интернета, Obsidian превращается в зоопарк плагинов. Тогда я плюнул и за выходные набросал свой инструмент на Tauri и React. Получился qnote — …
Мне надоело кормить корпоративных монстров своими данными и ждать пока их джава-скрипты прогрузятся. Gitea встала на мой дохлый сервер как родная и начала летать даже с кривым конфигом. Ты получишь тот же функционал но без слежки …
Как я перестал смотреть на номера строк и начал двигаться в коде на рефлексах. Фокус простой - относительный номер вместо абсолютного. Твой мозг перестаёт считать строки от начала файла и учится перепрыгивать на расстояние от …
Dev — раздел для разработчиков и инженеров, работающих с современными инструментами разработки программного обеспечения.
В разделе публикуются материалы по:
Здесь собраны практические статьи о разработке, автоматизации процессов и инструментах, которые ежедневно используются в инженерной работе.