Одно строчные скрипты.

Дата | 15.04.2016

Всем привет, решил реализовать запись на пять коротких, одно строчных команд/скриптов.
Может кому и понадобится.
Поиск по двум условиям, Апрель 14 и 15 числа.
а так же добавляем к уже выбранному нами результату, третье условие размер 5826.
Получает 2402 файлов.

# la -al /usr/local/www/web/upload/234/ | egrep "Apr (15|14)" | grep "5826" | wc -l
    2402

Удаляем найденные файлы.

# la -al /usr/local/www/web/upload/234/ | egrep "Apr (15|14)" | grep "5826" | xargs  rm -rf --

Поиск по нескольким переменным.

# ls -l | awk '{print $5 " " $9}' | grep -e '^.... .*' | grep -e '^.*65.* ' | awk '{print $2}'

или
…. — это 4ре любых символа , а в нашем случае цыфры ([0-9]{1,4})
(4|5) — ищем 4 и 5 месяцы
^.*81.* — ^ начало, любой символ, 0 или больше раз, что ищем (81), 0 или больше раз, любой символ

# ls -l /usr/local/www/test.local.local/web/upload/234 | egrep '.... ([0-9]{1,4}) Apr  (4|5)' | grep -e '^.*81.* '

Как понадобилось мне вытащить из базы все мобильные телефоны и почтовые адреса для рассылки.
Решил рекурсивно из файлового бэкапа базы данных вытянуть нужные данные.
Почтовые адреса.

# egrep -o "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}" /mnt/base.sql > /mnt/mail.txt

Мобильные телефоны.

# egrep -o "\+7[0-9]{10}" /mnt/base.sql > /mnt/tel.txt

* – Любое количество повторяющихся символов/набора, в том числе и нулевое.
+ – Один или больше количество экземпляров символа/набора.
Точка (.) соответствует любому символу.

редактируем содержимое.

https://rer.rrru/decor/aromaty/lamp-berzhe/ https://rer.rrru/decor/lamp-berzhe/
https://rer.rrru/decor/aromaty/dlya-vanny/ https://rer.rrru/decor/dlya-vanny/
cat redirect.txt | sed 's/https\:\/\/rer\.rrru/ /g' | sed 's/$/permanent;/' | sed 's/^/rewrite/' > new_red

получаем

rewrite /decor/aromaty/lamp-berzhe/ /decor/lamp-berzhe/ permanent;
rewrite /aromaty/dlya-vanny/ /decor/dlya-vanny/ permanent;

Смотрим ошибки у nginx.

# egrep -v '\HTTP/1.[0-1]\" (200|301)' /var/log/nginx/access.log | awk '{print $1,$6,$9,$14,$16,$18}' | sort | uniq -c | sort -nr | head -n 20 | sed 's/"//g'
   5 207.46.13.226 GET 404 bingbot/2.0;  
   3 217.25.230.26 GET 404 Linux AppleWebKit/537.36 like
   2 66.249.76.101 GET 404 Android Nexus Build/MMB29P)
   2 46.229.168.85 GET 404 SemrushBot/2~bl;  
   2 46.229.168.82 GET 404 SemrushBot/2~bl;  
   2 207.46.13.133 GET 404 bingbot/2.0;  
   1 95.163.255.241 GET 404 Linux Mail.RU_Bot/2.0; 
   1 95.163.255.227 GET 404 Linux Mail.RU_Bot/2.0; 
   1 95.163.255.225 GET 404 Linux Mail.RU_Bot/2.0; 
   1 95.163.255.206 GET 404 Linux Mail.RU_Bot/2.0; 
   1 95.108.181.81 GET 404 YandexBot/3.0;  
   1 89.31.18.75 GET 404 NT WOW64) (KHTML,
   1 66.249.76.103 GET 404 Android Nexus Build/MMB29P)
   1 66.249.76.103 GET 404 (KHTML, Gecko; Googlebot/2.1;
   1 66.249.65.159 GET 404 (KHTML, Gecko; Googlebot/2.1;
   1 66.249.65.158 GET 404 Googlebot/2.1;  
   1 66.249.65.158 GET 404 Android Nexus Build/MMB29P)
   1 66.249.65.129 GET 404 Android Nexus Build/MMB29P)
   1 46.71.43.54 GET 499 NT Win64; AppleWebKit/537.36
   1 46.229.168.78 GET 404 SemrushBot/2~bl;  

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *