про grep
All checks were successful
Build MkDocs / build-and-deploy (push) Successful in 14s

This commit is contained in:
Илья Макаров 2025-02-04 22:43:11 +03:00
parent 5f5e118971
commit 87a671b417

View File

@ -279,7 +279,6 @@
- `truncate -s 0 /var/log/messages`
---
- `find / -name <pg_config> 2>/dev/null`
- `grep -A 10 <файл>` - вывести 10 строк после найденного совпадения
### Диски
@ -319,3 +318,31 @@ mount [OPTIONS] <DEVICE> <MOUNTPOINT>
- 0 это SSD (твердотельный накопитель)
> диск с названием sr* это cd привод
- `lsscsi` - отображает устройства, подключенные через интерфейс SCSI
### Grep
- `cat <filename> | grep -A 10 "<pattern>"` - вывести 10 строк ПОСЛЕ найденного совпадения
- `cat <filename> | grep -B 10 "<pattern>"` - вывести 10 строк ПЕРЕД найденным совпадения
- `cat <filename> | grep "^<pattern>"` - начинается с `<pattern>`
- `cat <filename> | grep "^<pattern1>.*<pattern2>"` - `.*` любое количество символом между `<pattern1>` и `<pattern2>`
??? info "Квантификатор, он указывает сколько раз в строке встречается символ или группа символов"
- `*` - любое количество символов
- `+` - один и более символов
- `?` - 0 или 1 символ
- `{n}` - встречается n раз
- `cat <filename> | grep "^<pattern1>.*<pattern2>$"` - `<pattern2>` в конце строки (из-за `$`)
- `cat <filename> | grep -P "restrict(ed|ing)"` - ну понятно
??? info "Флаги grep"
Если не работает корректная регулярка, добавить один из этих флагов
- `-P` - Perl совместисые регулярки
- `-E` - расширенные регулярки
- `i` - игнорировать регистр
- `w` - только целые слова
- `x` - совпадение всей строки
- `cat <filename> | grep -P "May 2 08:5(3|4|5):"` - ну понятно