ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ grep Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΡΠ°ΠΉΠ»Π°Ρ
ΠΠΎΠΌΠ°Π½Π΄Π° grep – ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΌΠΎΡΠ½ΡΡ ΠΈ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΡΠΈΠ»ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Π½Π° Π±Π°Π·Π΅ Unix ΠΈ Linux. ΠΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΊΠ°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΈΠ»ΠΈ ΡΠ΅ΠΊΡΡ Π² ΡΠ°ΠΉΠ»Π°Ρ , ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π΅Π΅ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ², ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ Π²ΡΠ΅Ρ , ΠΊΡΠΎ ΠΈΠΌΠ΅Π΅Ρ Π΄Π΅Π»ΠΎ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΌΠ°ΠΌΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ Π΄Π°Π½Π½ΡΡ . ΠΠ΄Π΅Ρ Π»ΠΈ ΡΠ΅ΡΡ ΠΎ ΠΏΠΎΠΈΡΠΊΠ΅ Π² ΡΠ°ΠΉΠ»Π°Ρ ΠΆΡΡΠ½Π°Π»ΠΎΠ², ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠ°ΠΉΠ»Π°Ρ ΠΈΠ»ΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π°Π·Π°Ρ , grep ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π±ΡΡΡΡΠΎ Π½Π°ΠΉΡΠΈ Π½ΡΠΆΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Ρ ΡΠ°Π±ΠΎΡΡ Ρ grep ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠ΅ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΠΈΠ·Π²Π»Π΅ΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ ΠΏΠΎΠ»ΡΠ·Ρ ΠΈΠ· ΡΡΠΎΠΉ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ grep?
grep ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ “ΠΠ»ΠΎΠ±Π°Π»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ°ΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ” ΠΠ½Π° ΠΈΡΠ΅Ρ Π² ΡΠ°ΠΉΠ»Π°Ρ ΡΡΡΠΎΠΊΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΡΠ°Π±Π»ΠΎΠ½Ρ, ΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ ΡΡΠΈ ΡΡΡΠΎΠΊΠΈ Π½Π° ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅. grep ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ – ΡΠ°Π±Π»ΠΎΠ½Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΈΡΠΊΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π±ΡΠΊΠ²Π°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΡ.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ grep ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ:
grep [options] pattern [file...]
- ΡΠ°Π±Π»ΠΎΠ½: Π‘ΡΡΠΎΠΊΠ° ΠΈΠ»ΠΈ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠΈΡΠΊ.
- ΡΠ°ΠΉΠ»: Π€Π°ΠΉΠ» ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Ρ, Π² ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΠΎΠΈΡΠΊ.
- ΠΎΠΏΡΠΈΠΈ: ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ»Π°Π³ΠΈ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ grep.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
ΠΠΎΡ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠ΅Ρ ΡΠ»ΠΎΠ²ΠΎ “error” Π² ΡΠ°ΠΉΠ»Π΅ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ log.txt:
grep "error" log.txt

ΠΡΠΎ Π²ΡΠ²Π΅Π΄Π΅Ρ Π²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°ΠΉΠ»Π΅ log.txt, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΡΠ»ΠΎΠ²ΠΎ “error”
Π§Π°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ grep
Π‘ΠΈΠ»Π° grep Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² Π΅Π³ΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΎΠΏΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΡΡΠΎΡΠ½ΠΈΡΡ ΠΏΠΎΠΈΡΠΊ.
1. ΠΠΎΠΈΡΠΊ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»Π°Ρ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΊΠ°ΡΡ ΡΡΠ°Π·Ρ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»Π°Ρ , ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΡ ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΡΠ°Π±Π»ΠΎΠ½Π°:
grep "error" text.txt text1.txt
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΠ΅ Π·Π½Π°ΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»Π°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°:
grep "error" *.log
ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΉΡΠΈ ΡΠ»ΠΎΠ²ΠΎ “error” Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»Π°Ρ .log Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
2. ΠΠΎΠΈΡΠΊ Ρ ΡΡΠ΅ΡΠΎΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ° (-i)
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ grep ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»Π΅Π½ ΠΊ ΡΠ΅Π³ΠΈΡΡΡΡ. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π³ΠΈΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠΏΡΠΈΡ -i:
grep -i "error" text.txt
ΠΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ»ΠΎΠ²Π°ΠΌ “Error”, “ERROR” ΠΈΠ»ΠΈ Π»ΡΠ±ΡΠΌ Π΄ΡΡΠ³ΠΈΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ°ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ°.
3. Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΡΠΉ ΠΏΠΎΠΈΡΠΊ (-r ΠΈΠ»ΠΈ -R)
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π½Π°ΠΉΡΠΈ ΡΠ°Π±Π»ΠΎΠ½ Π² ΡΠ°ΠΉΠ»Π°Ρ Π²Π½ΡΡΡΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠΏΡΠΈΡ -r (ΠΈΠ»ΠΈ -R) Π΄Π»Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ°:
grep -r "error" /var/logs/
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΈΡΠΊΠ°ΡΡ ΡΠ»ΠΎΠ²ΠΎ “error” Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»Π°Ρ Π²Π½ΡΡΡΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° /var/logs/ ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ².
4. ΠΠΎΠΊΠ°Π·Π°ΡΡ Π½ΠΎΠΌΠ΅ΡΠ° ΡΡΡΠΎΠΊ (-n)
ΠΠΏΡΠΈΡ -n Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² Π²ΡΠ²ΠΎΠ΄ Π½ΠΎΠΌΠ΅ΡΠ° ΡΡΡΠΎΠΊ, ΡΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π±Π»ΠΎΠ½Π° Π² ΡΠ°ΠΉΠ»Π΅:
grep -n "error" text.txt
Π Π²ΡΠ²ΠΎΠ΄Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊΠ°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π·Π΄Π΅ΡΡ:
25:ΠΎΡΠΈΠ±ΠΊΠ° ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ
5. ΠΠΎΠ΄ΡΡΠ΅Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ (-c)
ΠΡΠ»ΠΈ Π²Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΡΠ°Π±Π»ΠΎΠ½ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠΏΡΠΈΡ -c, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠ΅ΡΠ°ΡΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡΠΈΡ ΡΡΡΠΎΠΊ:
grep -c "error" text.txt
ΠΠΎΠ»ΡΡΠΈΡΡΡ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅:

ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ “ΠΎΡΠΈΠ±ΠΊΠ°” ΠΏΠΎΡΠ²ΠΈΠ»ΠΎΡΡ ΡΡΠΈ ΡΠ°Π·Π° Π² ΡΠ°ΠΉΠ»Π΅ log.txt.
6. ΠΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ (-v)
Π§ΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΡΡΡΠΎΠΊΠΈ, Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π±Π»ΠΎΠ½Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠΏΡΠΈΡ -v:
grep -v "error" text.txt
ΠΡΠΎ Π²Π΅ΡΠ½Π΅Ρ Π²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°ΠΉΠ»Π΅ log.txt, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠ»ΠΎΠ²ΠΎ “error”
7. ΠΠΎΠΈΡΠΊ ΡΠ΅Π»ΡΡ ΡΠ»ΠΎΠ² (-w)
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΊΠ°ΡΡ ΡΠ΅Π»ΡΠ΅ ΡΠ»ΠΎΠ²Π°, Π° Π½Π΅ ΡΠ°ΡΡΠΈΡΠ½ΡΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ -w . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
grep -w "error" log.txt
ΠΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ ΡΠ»ΠΎΠ²ΠΎ “error” Π±ΡΠ΄Π΅Ρ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ°ΠΊ ΡΠ΅Π»ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ, Π° Π½Π΅ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ»ΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ “error123” ΠΈΠ»ΠΈ “myerror”
8. ΠΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ Π²ΡΠ²ΠΎΠ΄ (-m)
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠΈΡ -m , ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΊ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΡΠ΅ 5 ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ:
grep -m 5 "error" log.txt
9. ΠΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ (–color)
Π§ΡΠΎΠ±Ρ Π»Π΅Π³ΡΠ΅ Π±ΡΠ»ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ, Π³Π΄Π΅ Π² Π²ΡΠ²ΠΎΠ΄Π΅ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΠ²Π΅ΡΠΎΠ²ΡΡ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΡΠΈΠΈ –color :
grep --color "error" log.txt
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠΌΡΠ»ΡΡΠΎΡΠΎΠ² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡΠΈΠΉ ΡΠ΅ΠΊΡΡ ΡΠ²Π΅ΡΠΎΠΌ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² grep
ΠΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΌΠΎΡΠ½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ grep ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ (regex), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΈΡΠΊΠ°ΡΡ ΡΠ°Π±Π»ΠΎΠ½Ρ, Π° Π½Π΅ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² grep:
- ΠΠΎΠΈΡΠΊ ΡΡΡΠΎΠΊ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
ΡΡ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π±Π»ΠΎΠ½Π°:
grep "^error" log.txt
ΠΠ°ΡΠ΅ΡΠΊΠ° (^) ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π½Π°ΡΠ°Π»Ρ ΡΡΡΠΎΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π±ΡΠ΄ΡΡ Π½Π°ΠΉΠ΄Π΅Π½Ρ ΡΡΡΠΎΠΊΠΈ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠ΅ΡΡ Ρ “error”
- ΠΠΎΠΈΡΠΊ ΡΡΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠΌ:
grep "error$" log.txt
ΠΠ½Π°ΠΊ Π΄ΠΎΠ»Π»Π°ΡΠ° ($) ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΊΠΎΠ½Π΅Ρ ΡΡΡΠΎΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π±ΡΠ΄ΡΡ Π½Π°ΠΉΠ΄Π΅Π½Ρ ΡΡΡΠΎΠΊΠΈ, Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΠΈΠ΅ΡΡ Π½Π° “error”
- ΠΠΎΠΈΡΠΊ ΡΡΡΠΎΠΊ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ
ΡΠΈΡΡΡ:
grep "[0-9]" log.txt
Π¨Π°Π±Π»ΠΎΠ½ [0-9] ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΉ ΡΠΈΡΡΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π½Π°ΠΉΠ΄Π΅Ρ ΡΡΡΠΎΠΊΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΡΠΈΡΠ»Π°.
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ -E, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ:
grep -E "error|failure" log.txt
ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π°ΠΉΡΠΈ ΡΡΡΠΎΠΊΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ Π»ΠΈΠ±ΠΎ “error”, Π»ΠΈΠ±ΠΎ “failure”. Π‘ΠΈΠΌΠ²ΠΎΠ» | ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ “ΠΠΠ” Π² ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ .
ΠΡΡΠ³ΠΈΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ:
- * (Π½ΠΎΠ»Ρ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ)
- (ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ)
- . (ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΌΡ ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ)
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΡΠΎΠΊ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ Π»ΡΠ±ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ, Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅Π΅ΡΡ Ρ “err” ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΠ΅Π΅ΡΡ Π»ΡΠ±ΡΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ ΠΏΠΎΡΠ»Π΅ Π½Π΅Π³ΠΎ:
grep -E "err.*" log.txt
ΠΠΎΠΈΡΠΊ ΡΠΆΠ°ΡΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ zgrep
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΊΠ°ΡΡ Π²Π½ΡΡΡΠΈ ΡΠΆΠ°ΡΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,.gz ), Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ zgrep, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΊ grep, Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΆΠ°ΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ:
zgrep "error" log.gz
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΠΏΠΎΠΈΡΠΊ “error” Π² ΡΠ°ΠΉΠ»Π΅ log.gz, Π½Π΅ ΡΡΠ΅Π±ΡΡ ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ ΡΠ°ΠΉΠ»Π° Π²ΡΡΡΠ½ΡΡ.
ΠΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ grep Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ grep Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΡΠ± (|) Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠΎΡΠ½ΡΡ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
- ΠΠΎΠΈΡΠΊ Π² Π²ΡΠ²ΠΎΠ΄Π΅ Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ Π½Π°ΠΉΡΠΈ ΠΏΡΠΎΡΠ΅ΡΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΡΠ»ΠΎΠ²ΠΎ “bash”, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ:
ps aux | grep "bash"
- ΠΠΎΠΈΡΠΊ Π² ΡΠ°ΠΉΠ»Π΅ ΠΆΡΡΠ½Π°Π»Π° ΠΈ ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ
ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ:
grep "error" log.txt | sort | uniq -c
ΠΡΠΎ ΠΎΡΡΠΎΡΡΠΈΡΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡΠΈΡ ΡΡΡΠΎΠΊ ΠΈ ΠΏΠΎΠ΄ΡΡΠΈΡΠ°Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠΌΠ°Π½Π΄Π° grep – ΡΡΠΎ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΠΌΠΎΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π±ΡΡΡΡΠΎ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΊΠ°ΡΡ ΡΠ΅ΠΊΡΡ ΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ Π² ΡΠ°ΠΉΠ»Π°Ρ . ΠΠ½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ ΠΆΡΡΠ½Π°Π»Ρ, ΡΠΈΠ»ΡΡΡΡΠ΅ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ ΠΈΡΠ΅ΡΠ΅ ΠΊΠΎΠ΄, Π²Π»Π°Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ grep ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π²ΡΠ΅ΠΌΡ ΠΈ ΡΠΈΠ»Ρ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ ΠΏΠΎΠΈΡΠΊΠ° Π±Π΅Π· ΡΡΠ΅ΡΠ° ΡΠ΅Π³ΠΈΡΡΡΠ°, ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°ΠΌ grep Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π΅Π½, ΡΡΠΎΠ±Ρ ΡΠΏΡΠ°Π²ΠΈΡΡΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Ρ Π»ΡΠ±ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ ΠΏΠΎ ΠΏΠΎΠΈΡΠΊΡ ΡΠ΅ΠΊΡΡΠ°, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΏΠ΅ΡΠ΅Π΄ Π½ΠΈΠΌ ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅.
ΠΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΡ grep Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π΅Π³ΠΎ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π² Π»ΡΠ±ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π½Π° Π±Π°Π·Π΅ Linux ΠΈΠ»ΠΈ Unix.
