T
Team Lead Notes
@LinuxBites32 подп.
40просмотров
6 октября 2025 г.
📷 ФотоScore: 44
Регулярные выражения в Linux 🪄 Привет! Сегодня поговорим о штуке, которая превращает обычного пользователя терминала в настоящего текстового мага — регулярных выражениях (или просто regex). Если вы хоть раз писали grep "что-то" файл — вы уже на пороге. А если научитесь использовать регулярки по-настоящему — сможете искать логи, фильтровать конфиги и парсить вывод команд быстрее, чем коллега успеет открыть Google. 🔤 Что такое регулярные выражения? Это язык шаблонов для поиска и обработки текста. Вместо того чтобы искать точную фразу, вы описываете паттерн — например: > «найди все строки, где есть IP-адрес» > «выдели всё, что начинается с ERROR и заканчивается цифрой» 🛠 Где они работают в Linux? Практически везде! Особенно часто — с этими командами: - grep — поиск по файлам и выводу - sed — потоковый редактор (замена, удаление) - awk — мощная обработка текста - less / vim — поиск внутри редакторов - лог-агрегаторы, лог-парсеры, bash-скрипты 🧪 Основы синтаксиса (на примере grep) > 💡 Используйте grep -E для «расширенных» регулярок (без экранирования +, |, () и т.д.) Примеры: 1. Любой символ . — один любой символ grep "h.t" file.txt # найдёт "hat", "hot", "hit" 2. Повторения - — 0 или больше раз - + — 1 или больше раз (только с -E) - ? — 0 или 1 раз grep -E "colou?r" file.txt # "color" и "colour" 3. Наборы символов [abc] — любой из a, b или c [0-9] — любая цифра [^0-9] — всё, кроме цифр grep "[0-9]\{3\}" file.log # три цифры подряд 4. Якоря - ^ — начало строки - $ — конец строки grep "^ERROR" /var/log/syslog # только строки, начинающиеся с ERROR 5. Группы и альтернативы grep -E "fatal|error|panic" app.log # любое из трёх слов 💡 Реальные кейсы 1. Найти все IP-адреса в логе: grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b" /var/log/auth.log (-o — выводить только совпадение, а не всю строку) 2. Найти ошибки за последние 10 минут (если в логах есть время): journalctl --since "10 minutes ago" | grep -i "error" …а с регуляркой можно уточнить формат времени или код ошибки. 3. Удалить пустые строки из файла: grep -v "^$" file.txt (-v — инверсия: показать всё, кроме совпадений) 📚 Советы - Начните с простого: . ^ $ [0-9] — этого хватит на 80% задач. - Тестируйте регулярки на regex101.com (выберите flavour PCRE или POSIX). - В grep по умолчанию используется BRE (Basic Regular Expressions). Для удобства — всегда пишите grep -E (ERE — Extended). - Не пытайтесь написать «идеальную» регулярку для email или URL — это ловушка. Иногда проще использовать awk или jq. Регулярные выражения — не магия, а инструмент. И как любой инструмент, они становятся мощными, когда вы знаете, когда и как их применять. Попробуйте сегодня: возьмите свой auth.log или syslog и найдите что-нибудь с помощью grep -E и пары символов. Уверен — вы удивитесь, насколько это быстро и точно. #CLI #Commandline #Debug #Devops #Grep #IT #Linux #LinuxTips #Logs #Regex #Sed #Sysadmin #Terminal #Tips #Ubuntu #Awk #Less #Vim #Автоматизация #Лайфхаки #НастройкаLinux #Программирование #РаботаСТерминалом #СистемаДляЧайников #СистемноеАдминистрирование
40
просмотров
3264
символов
Да
эмодзи
Да
медиа

Другие посты @LinuxBites

Все посты канала →
Регулярные выражения в Linux 🪄 Привет! Сегодня поговорим о — @LinuxBites | PostSniper