Рубрика «bash» - 29

Всем доброго хабрадня!

Простое решение на bash для расшаривания музыки и фоток в DropboxНи для кого не секрет, что Dropbox можно использовать для хранения сайтов-визиток (правда, с некоторыми ограничениями, о них ниже). Так же всем известно, что можно из дропбокса сделать почти ftp-сервер с удобным просмотром содержимого.

Методы эти известны всем, но они имеют и негативную сторону. Во-первых, html-содержимое для пользователей с российскими IP не доступно. Во-вторых, эти варианты использования папки Public не годятся для удобного шаринга большого количества картинок или музыки (пиратам дальше не читать). Исправим же это! Найдём средство создавать сайты в дропе и вставлять в них музыку с прослушиванием онлайн и картинки с превьюшками!

Сразу поговорим об ограничениях. Dropbox не даёт смотреть html, это так, но, как подсказывает нам adminimus вот тут, надо переходить на XHTML. Да, это немного неприятно, но быстро привыкаешь, а для простой вёрстки это и вообще почти не заметно. Значит, нам нужен скрипт, который на входе получит папку с файлами, а на выходе выдаст файлик .xhtml со всем необходимым содержимым.

Если Вам хочется сразу получить код на bash'е, то прошу на гитхаб, а если интересны технические подробности, то — под кат.
Читать полностью »

Klipper
В предыдущей статье мы обсуждали klipper — замечательную программу для управления буфером обмена в KDE. Мы узнали как расширить её функциональность с помощью скриптов и показали пару простых примеров, которые могут облегчить жизнь пользователям.

Сегодня мы продолжим писать скрипты и сделаем klipper ещё удобнее.

Читать полностью »

Миграция ОС в OpenVZ контейнер
   В данной заметке я хочу рассказать как просто перенести Linux систему с физического сервера или полной виртуализации (KVM,XEN,VMware) в контейнер OpenVZ. По данной теме достаточно материалов, но я расскажу о самом простом способе. Читать полностью »

Эдвард руки-ножницы
Одна из причин почему я люблю KDE — это маленькая иконка ножниц в системном лотке, знак того, что klipper запущен и уже работает для вас.

Основная задача klipper — запоминать историю буфера обмена и давать возможность перемещаться по ней. Таким образом, даже если вы скопировали в буфер несколько отрывков информации нажав Ctrl+C, всегда остаётся возможность вставить любой из них выбрав его в истории и нажав Ctrl+V.

Но о том, что же на самом деле умеет эта скромная на вид программа управления буфером обмена вы узнаете под катом.

Читать полностью »

Файервол представляет из себя bash-скрипт, который интегрирует с помощью соответствующих пакетов следующие функции:

  1. Файервол внешний и внутренний (пакет iptables).
  2. Учёт трафика внешнего и внутреннего (пакет iptables).
  3. Прокси-сервер для локальных сетей (пакет Squid).
  4. Контент-фильтр для локальных сетей (пакет DansGuardian).
  5. DNS-сервер для локальных сетей (пакет BIND).

Читать полностью »

Часто бывает так, что поставив новую стабильную систему, да ещё и отмеченную как LTS, вам всё равно хочется поставить новое ядро (в котором, например, улучшено энергосбережение и наконец-то заработает ваш новый планшет Genius).

Патчить и собирать ядро из исходников — игра, конечно, интересная, но для ленивых пользователей Ubuntu существует готовый репозиторий. Одна беда — скачивать пакеты и следить за обновлениями придётся вручную.

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

Я искренне верю, что авторы скрипта задавались единственной целью — перестать публиковать надоевшие списки команд и объяснять в комментариях какая у кого архитектура, но тем не менее скупая мужская слеза покатилась по моей щеке когда я смотрел на его содержимое.

Поэтому я решил сделать паузу и вспомнить как же это делалось раньше, когда деревья были большими, а иногда даже бинарными.
Читать полностью »

Часто бывает так, что поставив новую стабильную систему, да ещё и отмеченную как LTS, вам всё равно хочется установить новое ядро (в котором, например, улучшено энергосбережение и наконец-то заработает ваш новый планшет Genius).

Патчить и собирать ядро из исходников — игра, конечно, интересная, но для ленивых пользователей Ubuntu существует готовый репозиторий. Одна беда — скачивать пакеты и следить за обновлениями придётся вручную.

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

Я искренне верю, что авторы скрипта задавались единственной целью — перестать публиковать надоевшие списки команд и объяснять в комментариях какая у кого архитектура, но тем не менее скупая мужская слеза покатилась по моей щеке когда я смотрел на его содержимое.

Поэтому я решил сделать паузу и вспомнить как же это делалось раньше, когда деревья были большими, а иногда даже бинарными.
Читать полностью »

Я программист. По крайней мере так написано в трудовой книжке. Почти всё своё рабочее время я провожу в консоли и текстовом редакторе. Мне очень нравится bash. Почти год я жил в zsh, прислушавшись к советам своих многочисленных коллег и знакомых, но в итоге я вернулся в bash и ни капельки об этом не жалею.

Yet another cool story about bash prompt

Zsh красив, приятен, чертовски функционален, но, признаюсь честно, я не смог совладать со всеми его многочисленными настройками. Я хочу работать, а не бороться со своим рабочим окружением. Простой пример: пару раз из-за автодополнения zsh я удалял все директории и файлы в текущей директории — zsh просто ставил пробел между автодополненной директорией и введённой мною звёзочкой (я хотел удалить всё в выбранной папке). Помните тот эпичный баг с пробелом и удалении директории /usr? У меня было то же самое. Спасибо гиту, выручил в который раз.

Впрочем, дело не в zsh — будь я чуточку умнее я бы с ним обязательно справился бы, и всё было бы хорошо, но мы, суровые программисты, будем использовать bash и vim, а гламурные zsh и textmate оставим хипстерам и прочим модникам ;)

Я не напишу ничего оригинального и универсального решения я не приведу, но мне всегда нравилось читать конфиги и описания других людей, а если к ним были приложены интересные картинки, так я вообще перечитывал эти статьи несколько раз. Надеюсь, вам тоже будет интересно.Читать полностью »

Что учёные, писатели и программисты думают о популярных языках программирования.

Все языки

«Есть два подхода к программированию. Первый — сделать программу настолько простой, что в ней очевидно нет ошибок. А второй — сделать её настолько сложной, что в ней нет очевидных ошибок.»
Tony Hoare. Профессор, занимался реализацией Алгол 60, сейчас исследователь в Microsoft Research.

Algol 60 (позже повлиявший на C)

«Я не мог устоять перед искушением добавить в язык нулевой указатель (null), просто потому, что его так легко было реализовать. Это привело к бессчётному множеству ошибок, уязвимостей и сбоев, которые нанесли ущерб, наверное, в миллиард долларов за последние сорок лет.»
Tony Hoare.

Читать полностью »

Здравствуй Xабраменш,

IchBin's. Все началось с того, что поддержка last.fm радио была настолько коряво реализована в MPD, что я даже перестал эту функцию компилировать. Корявость ее заключалась в том, что настроившись на канал, все равно приходилось вручную добавлять треки в плейлист, ибо сервер выдает по пять треков за запрос. Следовательно, после того как все треки проигрались, нужно повторить запрос и получить следующие 5 треков! Дальше речь пойдет о скриптах, которые бы этот процесс автоматизировали
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js