Архив рубрики: BASH scripts
BASH: (( i++ )) vs (( ++i )) и другие примеры арифметических операторов
19 июня 2014BASH: позиционные и специальные аргументы
15 июня 2014В BASH shell имеется три типа аргументов – позиционные, специальные и переменные. Тут мы рассмотрим первые два. Позиционные параметры Позиционные аргументы – это аргументы командой строки (или функции в скрипте), доступ к которые осуществляется по номеру. Рассмотрим такой пример: #!/usr/bin/env bash echo $1 $2 $3 И пример его выполнения: [simterm] $ ./param1 one two three… Читать далее »
BASH: функция проверки значения элемента в массиве
4 июня 2014Имеется несколько системных переменных, наличие которых необходимо проверить перед выполнением определённого скрипта. Предположим, эти переменные – $sysvar1, $sysvar2, $sysvar3 и $sysvar3. Создадим массив, в котором перечислим переменные для проверки: variables=( [1]=$sysvar1 [2]=$sysvar2 [3]=$sysvar3 [4]=$sysvar3 )
GREP: поиск с операторами AND (и), OR (или), NOT (не)
14 апреля 2014BASH: скрипт бекапа с инкрементальным копированием файлов и полным MySQL
3 апреля 2014Скрипт предназначен для создания резервной копии JIRA, но может использоваться для любых целей. Скрипт создаёт 1 раз в неделю (воскресенье) полную копию файлов (база данных дампится полностью каждый раз), и каждый день – копию файлов, которые были изменены за последние сутки + полную копию базы. Так же – может быть запущен вручную, для создания полной… Читать далее »
BASH: скрипт отката (roll-back) OpenLDAP баз
7 марта 2014У Oracle для его баз данных имеется замечательный инструмент Flashback. Его задача – восстанавливать базу до определённого состояния. Подобное потребовалось сделать и для LDAP-баз при выполнении автотестов. Решение очень простое, в основном потому, что: а) имена DIT совпадают с определёнными переменными, которые присвоены каждому из BuildAgent-ов TeamCIty; б) пароли для доступа к базам – такие… Читать далее »
BASH: как заменить все заглавные символы на строчные в переменной, и наоборот?
6 марта 2014LDAP + BASH: скрипт резервного копирования и восстановления базы данных LDAP
5 марта 2014Всё работает на операционной системе: # cat /etc/redhat-release CentOS release 6.5 (Final) LDAP-сервер: # yum list installed | grep openldap openldap.x86_64 2.4.23-34.el6_5.1 openldap-clients.x86_64 2.4.23-34.el6_5.1 openldap-servers.x86_64 2.4.23-34.el6_5.1 Сервер сконфигурирован на использование файла конфигурации slapd.conf, а не базы cn=config. Это имеет значение только для функции dirdel (), в которой задаётся переменная $dirtodel. В скрипте используется функция getopts(),… Читать далее »
bash + MySQL: скрипт домашней бухгалтерии
22 февраля 2014Хардкорный bash-скрипт для ведения домашней бухгалтерии прямо из консоли 🙂 Пока в нём только “наличные” и, соответственно, только один тип операций – “ввод-вывод” этих самых наличных. Есть желание в будущем добавить несколько типов платежей (наличные, несколько платёжных карт, webmoney) и переписать на Python или Java с нормальным GUI. Основная идея написания скрипта была “не дать… Читать далее »