פריטים שיש למיין חייבים להיות מוגדרים בדרך כלשהי
נתונים בקובץ טקסט לינוקס ניתן למיין עם הפקודה מיון כל עוד כל רכיב הוא תחום בדרך כלשהי. לעתים קרובות, הפסיק משמש כמפריד למידע מופרד.
כללים בסיסיים למיון
הפקודה 'מיון' מסדרת מחדש את השורות בקובץ טקסט כדי למיין אותן באופן מספרי ובאלפבית. כללי ברירת המחדל עבור הפקודה מיון הם:
- טקסט שמתחיל במספר מופיע לפני טקסט המתחיל באות; מספרים נמוכים יותר מיון ראשון.
- טקסט המתחיל באות המופיעה באלפבית מוקדם יותר, כי האות הראשונה של ערכי טקסט אחרים ממוינת לפני טקסט המתחיל באות שמופיעה מאוחר יותר באלפבית.
- כאשר הטקסט מתחיל באותיות רישיות וקטנות של אות זהה, מופע האותיות הקטנות ממוין תחילה.
מיון קובץ טקסט
כדי למיין את השורות בקובץ לינוקס מופרד, אתה משתמש בפקודת המיון כך:
$ sort-k2 test.txtאשר ממיין את הקובץ "test.txt" על פי תווים החל בעמודה השנייה (k2 מתייחס לעמודה השנייה). בהנחה שתוכן קובץ הקלט הוא:
1, ג 'סטין טימברלייק, כותרת 545, מחיר $ 7.30 2, טיילור סוויפט, כותרת 723, מחיר $ 7.90 3, מיק ג'אגר, כותרת 610, מחיר $ 7.90 4, ליידי גאגא, כותרת 118, מחיר $ 7.30 5, ג' וני קאש, כותרת 482, מחיר $ 6.50 6, אלביס פרסלי, כותרת 335, מחיר $ 7.30 7, ג 'ון לנון, כותרת 271, מחיר $ 7.90 8, מייקל ג' קסון, כותרת 373, מחיר $ 5.50מכיוון שהעמודה השנייה בדוגמה זו מכילה שמות ראשונים ואחרונים, הפלט הממוין מסודר על ידי האות הראשונה של השם הפרטי של כל אחד בטור השני - אלביס, ג'ון, ג'וני, ג'סטין, ליידי, מייקל, מיק, וטיילור , כפי שמוצג מטה:
אלביס פרסלי, כותרת 335, מחיר $ 6.30 7, ג'ון לנון, כותרת 271, Price $ 7.90 5, ג'וני קאש, כותרת 482, מחיר $ 6.50 1, ג'סטין טימברלייק, כותרת 545, Price $ 6.30 4, ליידי גאגא, כותרת 118, Price $ 6.30 8, Michael Jackson, Title 373, Price $ 5.50 3, מיק ג'אגר, Title 610, Price $ 7.90 2, טיילור סוויפט, כותרת 723, Price $ 7.90אם אתה ממיין את הקובץ עם -k3 (באמצעות תוכן הקו החל בעמודה 3 - העמודה מספר כותרת), הפלט הוא:
4, Lady Gaga, Title 118, Price $ 6.30 7, John Lennon, Title 271, Price $ 7.90 6, אלביס פרסלי, כותרת 335, Price $ 6.30 8, מייקל ג'קסון, כותרת 373, Price $ 5.50 5, ג'וני קאש, כותרת 482, מחיר $ 6.50 1, ג'סטין טימברלייק, כותרת 545, מחיר $ 6.30 3, מיק ג'אגר, כותרת 610, Price $ 7.90 2, טיילור סוויפט, כותרת 723, Price $ 7.90ו
$ sort-test4txtמייצרת רשימה ממוינת לפי מחיר:
8, Michael Jackson, Title 373, Price $ 5.50 1, ג'סטין טימברלייק, Title 545, Price $ 6.30 4, ליידי גאגא, Title 118, Price $ 6.30 6, אלביס פרסלי, כותרת 335, Price $ 6.30 5, ג'וני קאש, כותרת 482, Price $ 6.50 2, Taylor Swift, Title 723, Price $ 7.90 3, מיק ג'אגר, Title 610, Price $ 7.90 7, John Lennon, Title 271, Price $ 7.90היפוך מיון
האפשרות -r הופכת את המיון. לדוגמה, באמצעות התוצאות לעיל:
$ sort -k4 -r test.txtתשואות:
7, John Lennon, Title 271, Price $ 7.90 3, מיק ג'אגר, Title 610, Price $ 7.90 2, טיילור סוויפט, כותרת 723, Price $ 7.90 5, ג'וני קאש, כותרת 482, מחיר $ 6.50 6, אלביס פרסלי, כותרת 335, מחיר $ 6.30 4, ליידי גאגא, כותרת 118, מחיר $ 6.30 1, ג'סטין טימברלייק, כותרת 545, מחיר $ 6.30 8, מייקל ג'קסון, כותרת 373, מחיר $ 5.50שמירת קובץ מסודר
מיון הקובץ אינו שומר אותו. כדי לשמור את הרשימה הממוינת בקובץ, אתה משתמש במפעיל הניתוב מחדש:
sort-k4 -r test.txt> test_new.txtשבו "test_new.txt" הוא הקובץ החדש.
מיון פלט זרם
ניתן גם להחיל את הפקודה למיין על הפלט של זרם, כגון מפעיל צינור:
$ ls -al | sort -r-n -k5זה ממיין את הפלט של הרישום קובץ שנוצר על ידי הפקודה ls על ידי גודל הקובץ, החל עם הקבצים הגדולים. מפעיל -n מציין מיון מספרי ולא אלפביתי.