2022-10-20 15:19:57 +01:00
|
|
|
# grep
|
|
|
|
|
|
|
|
> Find mønstre i filer via regulære udtryk (regular expressions).
|
|
|
|
> Mere information: <https://www.gnu.org/software/grep/manual/grep.html>.
|
|
|
|
|
|
|
|
- Søg efter et mønster i en fil:
|
|
|
|
|
|
|
|
`grep "{{søgemønster}}" {{sti/til/fil}}`
|
|
|
|
|
|
|
|
- Søg efter en eksakt streng (deaktiverer regulære udtryk):
|
|
|
|
|
2024-06-13 18:08:33 +01:00
|
|
|
`grep {{-F|--fixed-strings}} "{{eksakt_streng}}" {{sti/til/fil}}`
|
2022-10-20 15:19:57 +01:00
|
|
|
|
|
|
|
- Søg efter et mønster i alle filer, pånær binære, rekursivt i en mappe. Vis linjenumre der matcher til mønstret:
|
|
|
|
|
2024-06-13 18:08:33 +01:00
|
|
|
`grep {{-r|--recursive}} {{-n|--line-number}} --binary-files {{without-match}} "{{søgemønster}}" {{sti/til/mappe}}`
|
2022-10-20 15:19:57 +01:00
|
|
|
|
|
|
|
- Brug udvidede regulære udtryk (understøtter `?`, `+`, `{}`, `()` og `|`), i case-insensitive modus:
|
|
|
|
|
2024-06-13 18:08:33 +01:00
|
|
|
`grep {{-E|--extended-regexp}} {{-i|--ignore-case}} "{{søgemønster}}" {{sti/til/fil}}`
|
2022-10-20 15:19:57 +01:00
|
|
|
|
|
|
|
- Print 3 linjer af kontekst omkring, før eller efter hvert match:
|
|
|
|
|
2024-04-18 19:38:25 +01:00
|
|
|
`grep --{{context|before-context|after-context}} {{3}} "{{søgemønster}}" {{sti/til/fil}}`
|
2022-10-20 15:19:57 +01:00
|
|
|
|
|
|
|
- Print, filnavn og linjenummer for hvert match, med farveoutput:
|
|
|
|
|
2024-06-13 18:08:33 +01:00
|
|
|
`grep {{-H|--with-filename}} {{-n|--line-number}} --color=always "{{søgemønster}}" {{sti/til/fil}}`
|
2022-10-20 15:19:57 +01:00
|
|
|
|
|
|
|
- Søg efter linjer som matcher et mønster. Print kun den matchende tekst:
|
|
|
|
|
2024-06-13 18:08:33 +01:00
|
|
|
`grep {{-o|--only-matching}} "{{søgemønster}}" {{sti/til/fil}}`
|
2022-10-20 15:19:57 +01:00
|
|
|
|
|
|
|
- Søg i `stdin` efter linjer der ikke matcher et mønster:
|
|
|
|
|
2024-06-13 18:08:33 +01:00
|
|
|
`cat {{sti/til/fil}} | grep {{-v|--invert-match}} "{{søgemønster}}"`
|