Освоив предыдущие части этой серии материалов, вы узнали о том, что такое bash-скрипты, как их писать, как управлять потоком выполнения программы, как работать с файлами. Сегодня мы поговорим о том, как добавить скриптам интерактивности, оснастив их возможностями по получению данных от пользователя и по обработке этих данных.
Рубрика «bash-скрипт» - 3
Bash-скрипты, часть 3: параметры и ключи командной строки
2017-04-12 в 12:15, admin, рубрики: bash, bash-скрипт, linux, Блог компании RUVDS.com, ключи, Настройка Linux, параметры, Серверное администрирование, сценарий командной строкиBash-скрипты, часть 2: циклы
2017-04-07 в 12:58, admin, рубрики: bash, bash-скрипт, linux, Блог компании RUVDS.com, Настройка Linux, Серверное администрирование, сценарий командной строки, циклПредыдущая часть: Bash-скрипты: начало
В прошлый раз мы рассказали об основах программирования для bash. Даже то немногое, что уже разобрано, позволяет всем желающим приступить к автоматизации работы в Linux. В этом материале продолжим рассказ о bash-скриптах, поговорим об управляющих конструкциях, которые позволяют выполнять повторяющиеся действия. Речь идёт о циклах for
и while
, о методах работы с ними и о практических примерах их применения.
Внимание: в посте спрятана выгода!
Читать полностью »
Bash-скрипты: начало
2017-04-03 в 11:38, admin, рубрики: bash, bash-скрипт, linux, Блог компании RUVDS.com, Настройка Linux, Серверное администрирование, сценарий командной строкиСегодня поговорим о bash-скриптах. Это — сценарии командной строки, написанные для оболочки bash. Существуют и другие оболочки, например — zsh, tcsh, ksh, но мы сосредоточимся на bash. Этот материал предназначен для всех желающих, единственное условие — умение работать в командной строке Linux.
Сборка CSS-спрайтов для MIME-описателей из svg-png значков
2015-04-14 в 12:21, admin, рубрики: bash-скрипт, css-спрайты, mime, Веб-разработка, метки: css-спрайтыВводная: на нашем сайте есть файловый менеджер, который может загружать любой файл на сайт; при этом файлу нужно автоматически сопоставить значок по его MIME-типу.
Проблема: MIME-типов очень много, собирать значки для них вручную каждый раз — очень долго (и глупо). Требуется какое-то автоматическое решение.
Решение: в этой заметке я собрал простой рецепт самостоятельного изготовления CSS-спрайтов для подключения их в дальнейшем в качестве MIME-описателей на сайте на основе значков из установленных в дистрибутив Ubuntu пакетов тем GTK/Qt.
Читать полностью »
Наглядное представление активности коммитов SVN в терминале
2013-08-03 в 14:51, admin, рубрики: bash-скрипт, gtd, svn, Веб-разработка, продуктивность, Системы управления версиями, метки: bash-скрипт, gtd, svn, продуктивность В небольших личных проектах я использую SVN и bug-трекером в таких случаях служит лист формата A4. svn log
никогда не был легко читаем для меня, поэтому я написал bash-скрипт, позволяющий наглядно видеть активность разработки за последнее время или список коммитов заданной даты:
Скачиваем Youtube плейлист в формате mp3 одним bash-скриптом
2013-06-13 в 9:09, admin, рубрики: bash-скрипт, linux, mp3, YouTube, музыка, оперативная память, Убунтариум, метки: bash-скрипт, mp3, youtube, музыка, оперативная памятьТак сложилось, что в данный момент мой рабочий ноутбук оснащен лишь 2GB оперативной памяти. В связи с этим возникла необходимость оптимизации браузера, т.к. при большом количестве открытых вкладок памяти становится недостаточно и используется swap-раздел, что ведет к тормозам.
В процессе работы мне помогает музыка, обычно это открытый таб с плейлистом Youtube. Так вот этот таб в просессе работы съедает до 500MB (!) и даже выше (Google Chrome).
Такое положение дел вынудило написать bash-скрипт, который на входе получает ID плейлиста, на выходе – mp3 файлы, которые можно слушать в любимом плеере, например, в MOC:
Читать полностью »
Re: Узнать белый IP-адрес роутера с сервера, который за NAT-ом
2013-04-29 в 7:52, admin, рубрики: bash-скрипт, DynDNS, Песочница, метки: bash-скрипт, DynDNSДоброго времени суток Хабр.
Не имея возможности отвечать на вопросы из раздела QA, решил сделать небольшой пост с ответом на этот вопрос.
Мое решение несколько шире, чем вопрос, и надеюсь оно кому-то пригодиться еще.
Читать полностью »
Приемы написания скриптов на Bash. #2
2012-12-23 в 23:52, admin, рубрики: bash-скрипт, Программирование, метки: bash-скриптМоя прошлая статья Приемы написания скриптов на Bash вызвала жаркие дебаты в комментариях. Основной ее посыл был в использовании библиотеки функций. Кроме того я описал способ разбора параметров в Bash. Благодарю всех за конструктивные комментарии. Обращаю Ваше внимание, что статья предполагается для широкого круга читателей, а не адресована исключительно системным администраторам.
Продолжим начатое, и на реальном примере дополним подход к разбору параметров и унификации функционала скриптов.
Читать полностью »
Приемы написания скриптов в Bash
2012-11-16 в 17:17, admin, рубрики: bash-скрипт, Программирование, метки: bash-скриптАдминистраторам Linux писать скрипты на Bash приходится регулярно. Ниже я привожу советы, как можно ускорить эту работу, а также повысить надежность скриптов.
Совет 1
Не пишите скриптов, которые выполняют действия ничего не спрашивая. Такие скрипты нужны довольно редко. А вот всевозможного «добра» для копирования, синхронизации, запуска чего-либо, хоть отбавляй. И если в любимом Midnight Commander Вы вдруг нажали не на тот скрипт, то с системой может произойти все что угодно. Это как правила дорожного движения — «написано кровью».
Совет 2
Отталкиваясь от предыдущего, в начало каждого скрипта неплохо помещать что-то вроде:
read -n 1 -p "Ты уверен, что хочешь запустить это (y/[a]): " AMSURE
[ "$AMSURE" = "y" ] || exit
echo "" 1>&2
Команда echo, кстати, здесь нужна потому, что после нажатия кнопки <y> у вас не будет перевода строки, следовательно, следующий любой вывод пойдет в эту же строку.
Совет 3
Это ключевой совет из всех. Для того, чтобы не писать каждый раз одно и то же — пользуйтесь библиотеками функций. Прочитав много статей по Bash, я вынужден констатировать, что этой теме уделяется мало внимания. Возможно в силу очевидности. Однако я считаю необходимым напомнить об этом. Итак.
Заведите свою библиотеку функций, например myfunc.sh и положите ее, например в /usr/bin. При написании скриптов она не только поможет сократить ваш труд, но и позволит одним махом доработать множество скриптов, если Вы улучшите какую-либо функцию.
Например, в свете совета 2 можно написать такую функцию:Читать полностью »