This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
команды_фильтры [2017/02/22 11:38] val [grep] |
команды_фильтры [2025/08/20 12:42] (current) val [Вывод списка ip адресов из файла] |
||
|---|---|---|---|
| Line 3: | Line 3: | ||
| ===== cut ===== | ===== cut ===== | ||
| - | * [[http://ru.wikipedia.org/wiki/Cut|cut (википедия)]] | + | * [[https://ru.wikipedia.org/wiki/Cut|cut — команда выборки отдельных полей из строк файла]] |
| * [[http://unix.stackexchange.com/questions/35369/how-to-cut-by-tab-character|How to cut by tab character]] | * [[http://unix.stackexchange.com/questions/35369/how-to-cut-by-tab-character|How to cut by tab character]] | ||
| <code> | <code> | ||
| - | $ cut -d: -f1 /etc/passwd | ||
| $ cut -d: -f1,7 /etc/passwd | $ cut -d: -f1,7 /etc/passwd | ||
| - | $ cut -d: -f1-3 /etc/passwd | + | |
| $ cut -c1-5 /etc/passwd | $ cut -c1-5 /etc/passwd | ||
| + | |||
| + | $ cat /etc/passwd | rev | cut -c 2- | rev #remove last character | ||
| </code> | </code> | ||
| ===== tr ===== | ===== tr ===== | ||
| - | [[http://ru.wikipedia.org/wiki/Tr]] | + | * [[https://ru.wikipedia.org/wiki/Tr|translate или transliterate — Unix-утилита для преобразования символов]] |
| + | * MySQL запросы [[Сервис MySQL#Из командной строки]] | ||
| <code> | <code> | ||
| Line 21: | Line 23: | ||
| $ df -h / | tr -s ' ' | $ df -h / | tr -s ' ' | ||
| + | |||
| + | $ getent group group1 | cut -f4 -d: | tr "," "\n" | ||
| + | |||
| + | $ echo "{\"hw_id\":\"2\",\"hw_name\":\"router\"}" | tr -d '{}\\' | ||
| </code> | </code> | ||
| ===== sort ===== | ===== sort ===== | ||
| - | [[http://ru.wikipedia.org/wiki/Sort]] | + | * [[https://ru.wikipedia.org/wiki/Sort|sort — UNIX‐утилита, выводящая сортированное слияние указанных файлов]] |
| Ключи -n -r -u -kN | Ключи -n -r -u -kN | ||
| + | |||
| + | <code> | ||
| + | $ sort -n -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 addresses.txt | ||
| + | </code> | ||
| + | ===== uniq ===== | ||
| + | |||
| + | * [[https://ru.wikipedia.org/wiki/Uniq|uniq — утилита Unix, с помощью которой можно вывести или отфильтровать повторяющиеся строки]] | ||
| + | |||
| + | Cм. пример с grep | ||
| ===== grep ===== | ===== grep ===== | ||
| Line 69: | Line 84: | ||
| ===== Примеры использования ===== | ===== Примеры использования ===== | ||
| - | [[Авторизация доступа к ресурсам через SQUID]] | + | * [[Авторизация доступа к ресурсам через SQUID]] |
| + | |||
| + | ==== Статистика посещений за день ==== | ||
| <code> | <code> | ||
| # fgrep '05/Dec/2011' /opt/local/apache2/logs/access_log | cut -f1 -d' ' | sort -u | wc -l | # fgrep '05/Dec/2011' /opt/local/apache2/logs/access_log | cut -f1 -d' ' | sort -u | wc -l | ||
| + | </code> | ||
| + | |||
| + | ==== Вывод списка ip адресов из файла ==== | ||
| + | |||
| + | * [[https://stackoverflow.com/questions/14928573/sed-how-to-extract-ip-address-using-sed|sed - How to extract IP address using sed?]] | ||
| + | * Генератор отчетов awk [[Генератор отчетов awk#Выбор строк по числовому условию]] | ||
| + | |||
| + | <code> | ||
| + | # cat /var/log/auth.log | grep -oE '((1?[0-9][0-9]?|2[0-4][0-9]|25[0-5])\.){3}(1?[0-9][0-9]?|2[0-4][0-9]|25[0-5])' | sort | uniq -c | sort -n | ||
| + | </code> | ||
| + | |||
| + | ==== Вывод списка email адресов из файла ==== | ||
| + | <code> | ||
| + | # grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" /var/log/mail.log | sort -u | ||
| </code> | </code> | ||