← На главную

bashblog: запустил скрипт — блог из папки готов

28.06.2026 04:48 · hackernews

bashblog — это один Bash-скрипт, который превращает публичную папку на сервере в блог. Никаких зависимостей, никакой установки. Просто скачиваешь bb.sh, кладёшь в папку (например, $HOME/public_html/blog), делаешь chmod +x bb.sh и вводишь ./bb.sh post. Скрипт откроет редактор из переменной $EDITOR, пишешь пост — и готово. Всё остальное он делает сам: создаёт HTML-страницу, обновляет индекс, генерирует RSS. Работает на GNU/Linux, OSX и BSD «из коробки» — магия автодетекта подменяет флаги date, grep и других базовых утилит. Не нужен даже GNU coreutils на Mac.

Конфигурация не обязательна, но можно поменять заголовок, автора и другие параметры двумя способами: либо отредактировать переменные в функции global_variables() внутри bb.sh, либо создать файл .config с теми же переменными (построчно, типа variablename="value"). Скрипт сначала грузит дефолты, потом перезаписывает из .config. Если не хочешь трогать скрипт и обновлять его через git — используй .config.

Из фич: поддержка Markdown (нужна сторонняя библиотека, проще всего взять Markdown.pl от Грубера), черновики с сохранением и дозаписью, предпросмотр, теги/категории (автоматически генерирует страницы для каждого тега), Disqus-комментарии, Twitter-шеринг (с опцией без куки для EU cookie law), Google Analytics, RSS с Feedburner, собственный CSS, автоматический бэкап (./backup.tar.gz) при каждом посте. Всё статично — после генерации файлы можно просто залить на сервер, никакого PHP или базы данных.

Скрипт состоит примерно из 1000 строк кода. Разработка ведётся с 2013 года, актуально по состоянию на 2016. Пулл-реквесты принимают, но с условиями: маленькие правки, не ломать create_html_file(), работать на Linux, BSD и Mac, сохранять обратную совместимость в дефолтной конфигурации. Новые фичи должны быть либо очень востребованными (как Disqus), либо минимальными. В ченжлоге версии от 1.0 до 2.10 — добавлены поддержка i18n, multiple authors, теги, переименование постов, tags command, delete, edit, list, режим «только посты» на главной, опция global_twitter_card_image и т.д. Лицензия GPL v3.

Читать оригинал →