Menu
CoddyTech

צינור עם Grep

חלק מהיחידה יסודות במסלול ה-Terminal של Coddy. שיעור 46 מתוך 82.

הפקודה grep נעשית עוצמתית במיוחד כשמשלבים אותה עם צינורות. במקום לחפש בתוך קובץ, אפשר לסנן את הפלט של כל פקודה כדי למצוא בדיוק את מה שצריך.

נניח שברצונך למצוא קובץ מסוים ברשימת הספרייה:

ls -l | grep "report"

הפקודה מציגה את כל הקבצים בפירוט, ואז מסננת כדי להציג רק שורות שמכילות את "report". כך מתקבלות תוצאות ממוקדות בלי לסרוק ידנית את הכול.

העברת פלט אל grep עובדת עם כל פקודה שמפיקה פלט טקסטואלי. כדי למצוא תהליכים פעילים הקשורים לתוכנית מסוימת:

ps aux | grep "python"

אפשר גם לשרשר את grep לפקודות אחרות שלמדת. כדי לספור כמה שורות מכילות מילה מסוימת:

cat logfile.txt | grep "error" | wc -l

הפקודה קוראת את הקובץ, מסננת שורות שמכילות את "error", ואז סופרת אותן. הדגלים של grep שלמדת קודם פועלים באותו אופן בצינורות: השתמש ב־-i להתאמה שאינה תלוית רישיות או ב־-v כדי להחריג התאמות.

challenge icon

אתגר

קל

הקובץ access.log מכיל רשומות גישה לשרת אינטרנט. השתמש בצינור כדי לסנן ולספור כמה בקשות הסתיימו בקוד מצב שגיאה 500.

הפעל פקודה אחת ש:

  • משתמשת ב־cat כדי לקרוא את access.log
  • מעבירה את הפלט אל grep כדי לסנן שורות שמכילות 500
  • מעבירה את הפלט אל wc -l כדי לספור את השורות התואמות

רמז: שרשר את שלוש הפקודות באמצעות הסימן |. הפקודה grep מסננת את הפלט, ו־wc -l סופרת את השורות שנותרו.

נסו בעצמכם

טרמינל
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: Terminal אונליין