Menu
Coddy logo textTech

צינור עם 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 אונליין