# 4.1 grep ने text शोधूया

Source: https://ravindrabagale.com/mr/aws/ch04-linux-advanced-commands/4-1-searching-text-grep.html
Language: mr (Marathi with English technical terms)

Mauli Dairy च्या log मध्ये हजारो lines आहेत. Error असलेल्या lines शोधायला grep वापरतो; pattern जुळणाऱ्या lines तो print करतो.

 | Option | अर्थ

 | -i | Case दुर्लक्षित

 | -r / -R | Folders मध्ये recursive search

 | -n | Line numbers

 | -v | न जुळणाऱ्या lines

 | -c | जुळणाऱ्या lines ची संख्या

 | -l | फक्त file names

 | -w | पूर्ण word

 | -E | Extended regex: |, +, ? वगैरे

 | -A 3 / -B 3 / -C 3 | Match नंतर/आधी/दोन्हीकडे 3 lines

grep -i "error" /var/log/nginx/error.log
grep -rn "listen" /etc/nginx/
grep -v "^#" /etc/ssh/sshd_config | grep -v "^$"   # hide comments & blank lines
grep -c " 404 " /var/log/nginx/access.log          # how many 404s?
grep -E "Failed|Invalid" /var/log/auth.log         # Ubuntu SSH failures
sudo grep "Failed password" /var/log/secure         # AL2/CentOS (AL2023 uses journalctl)

Lab

sudo grep -v "^#" /etc/ssh/sshd_config | grep -v "^$" ने comments/blank lines वगळा आणि दिसणाऱ्या settings लिहा. पूर्ण effective SSH config मध्ये includes/defaults देखील असतात; ही फक्त file ची view आहे. Nginx असेल तर grep -c " 404 " /var/log/nginx/access.log करा; नसेल तर Chapter 6 नंतर करा.

रवींद्र बागले यांची tip

Log मध्ये error, Error, ERROR असू शकतात; grep -i वापरा. Folder search साठी -rn मुळे file आणि line दोन्ही समजतात.
