пятница, 31 марта 2017 г.

Регулярные выражения - примеры №1

Более двух пробелов в строке:
\s{2,}
Все символы между началом строки и например словом Принтер:
(^.*Принтер)
Ищет все, что начинается с Принтер и до конца строки:
(Принтер.+)$
Ищет пустую строку и удаляет пустую строку:
\n\r   заменить на \0
Ищет всю строку содержащую какое-то слово:
(^.*Прринтер.+)$ или (^.*Device Toolbox)$  или (^.*Excel MUI.+)$
Пробелы в начале строки:
^\s*
Удалить пробелы в конце строки после последнего символа
найти: \s+$  заменить на: \0
Удалить дубликаты :
^(.*?)$\s+?^(?=.*^\1$)  заменить на \0

Регулярные выражения в notepad++

Список выражений:
. — Один произвольный символ
^ — Начало строки
$ — Конец строки
\s — Пробел
\S — Не Пробел
\w — Буква, цифра или символ подчёркивания _
\d — Любая цифра
\D — Любой символ кроме цифр
[0-9] — Любая цифра
[a-z] — Любая буква от a до z (весь латинский набор символов) в нижнем регистре
[A-Z] — Любая буква от a до z в ВЕРХНЕМ регистре
[a-zA-Z] — Любая буква от a до z в произвольном регистре
[a-Z] — Любая буква от a до z в произвольном регистре
* — Повторение. Означает, что предшествующий символ может повторяться (0 или более раз)
.* — Любой набор символов. Например, условие .*
— найдет все что между тегами

(^.*$) — Любой текст между началом и концом строки
([0-9][0-9]*.) — Любое двухзначное число
\n\r — Пустая строка
^\s*$ — Пустая строка с пробелом
^[ ]*$ — Ищет пустые строки содержащие пробел
.

Выгрузка ФИО и логинов из ActivDerectory

dsquery - позволяет искать в AD объекты
dsget - получает свойства выбранного объекта, в нашем случае мы получаем информацию по логину, а именно фио, за это отвечает параметр -display

некоторые параметры:
-display — выводит полные имена найденных учетных записей;
-desc — выводит описания найденных учетных записей;
-dn — выводит DN найденных учетных записей;
-empid — выводит идентификаторы сотрудников из найденных учетных записей;
-fn — выводит имена пользователей из найденных учетных записей;
-samid — выводит имена учетных записей в SAM для найденных учетных записей;
-sid — выводит идентификаторы защиты из найденных учетных записей;
-disabled — выводит значение Yes/No (Да/Нет), указывающее, отключена ли данная учетная запись.

dsquery user -name * -limit 0 | dsget user -display -samid >C:\list_login.txt
Вывод:
ivan Иван Иванович Петров
semen Семен Семенович Скоробуба



пятница, 24 марта 2017 г.

linux backup mysql ftp

Скрипта бэкапа:
Делаем дамп базы MySQL и укладываем его и еще  каталог с сайтом в архив, при этом в параметрах указываем какие каталоги пропускать. Потом устанавливаем соединение с FTP сервером и копируем наш архив на удаленный сервер.

#!/bin/bash
to_cat=/backup/wordpress
web_cat=/var/www/*
date_time=`date +"%Y-%m-%d_%H-%M"`
/usr/bin/mysqldump -uUser -pPassword DataBase> $to_cat/mysql_$date_time.sql
/bin/tar -czf $to_cat/arh_$date_time.tar.gz $web_cat  $to_cat/mysql_$date_time.sql --exclude '/var/www/forum' --exclude '/var/www/old' --exclude '/var/www/zakaz'  > /dev/null 2>&1
rm $to_cat/mysql_$date_time.sql
# удалении копий, которые старше 3 дней
find $to_cat -name '*.gz' -mtime +3 -delete
#копирование резервного архива на удаленный FTP-сервер
ftpuser='user'
password='Password'
ftpserver='192.168.1.1'
#Переходим в папку где лежать архивные копии
cd /backup/wordpress
dir
ftp -in $ftpserver << EOF
user $ftpuser $password
bin
passive
#переходим в папку на фтп
cd wordpress
mput arh_$date_time.tar.gz
quit
EOF