רוב האנשים מסתכלים על הרחבה של קובץ ולאחר מכן לנחש את סוג הקובץ מתוסף זה. לדוגמה, כאשר אתה רואה קובץ עם סיומת של gif, jpg, bmp או png אתה חושב על קובץ תמונה וכאשר אתה רואה קובץ עם סיומת של zip אתה מניח את הקובץ כבר דחוס באמצעות כלי דחיסת zip .
למען האמת קובץ יכול להיות סיומת אחת אבל להיות משהו שונה לגמרי ואם הקובץ אין סיומת איך אתה יכול לקבוע את סוג הקובץ?
ב- Linux ניתן למצוא את סוג הקובץ האמיתי באמצעות פקודת הקובץ.
כיצד פועל קובץ פקודות
על פי התיעוד, פקודת הקובץ מפעילה שלוש קבוצות של בדיקות כנגד קובץ:
- בדיקות מערכת קבצים
- בדיקות קסם
- בדיקות שפה
קבוצת הבדיקות הראשונה להחזרת תגובה חוקית גורמת לסוג הקובץ להיות מודפס.
בדיקות מערכת קבצים בודקות את ההחזר משיחת מערכת Stat. התוכנית בודקת אם הקובץ ריק ואם זה קובץ מיוחד. אם סוג הקובץ נמצא בקובץ כותרת המערכת, הוא יוחזר כסוג הקובץ החוקי.
בדיקות הקסם בודקות את התוכן של קובץ ובמיוחד כמה בתים בהתחלה אשר מסייעים לקבוע את סוג הקובץ. ישנם קבצים שונים אשר משמשים לעזור להתאים את הקובץ עם סוג הקובץ שלה אלה מאוחסנים / etc / קסם, / usr / share / misc / magic.mgc, / usr / share / misc / קסם. באפשרותך לדרוס קבצים אלה על-ידי הצבת קובץ בתיקיית הבית הנקראת $ HOME / .magic.mgc או $ HOME / .magic.
המבחנים הסופיים הם בדיקות שפה. הקובץ נבדק כדי לראות אם הוא קובץ טקסט. על ידי בדיקת הביטים הראשונים של קובץ תוכל להסיק אם הוא ASCII, UTF-8, UTF-16 או בפורמט אחר הקובע את הקובץ כקובץ טקסט. לאחר ערכת הדמות כבר deduced הקובץ נבדק מול שפות שונות. לדוגמה היא תוכנית קובץ AC.
אם אף אחד מהבדיקות עובד הפלט הוא פשוט נתונים.
כיצד להשתמש בפקודה קובץ
ניתן להשתמש בפקודת הקובץ באופן הבא:
קובץ קובץ
לדוגמה, לדמיין שיש לך קובץ בשם file1 היית מפעיל את הפקודה הבאה:
קובץ file1
הפלט יהיה משהו כזה:
file1: PNG נתוני תמונה, 640 x 341, 8-bit / צבע RGB, לא interlaced
הפלט המוצג קובע file1 להיות קובץ תמונה או להיות יותר מדויק קובץ רשת נייד (PNG) קובץ.
סוגי קבצים שונים מניבים תוצאות שונות, באופן הבא:
- סוג קובץ ISO - DOS / MBR אתחול סקטור ISO 9660 CD-ROM קבצי נתונים "תווית" (אתחול); מחיצה 2: ID = 0xef, start-CHS (0x3ff, 254,63), סוף CHS (0x3ff, 4,63) מתחיל 1496, 4736 מגזרים
- סוג קובץ ODS - גיליון אלקטרוני של OpenDocument
- סוג קובץ PDF - מסמך PDF, גרסה 1.4
- סוג קובץ CSV - טקסט ASCII, עם שורות ארוכות מאוד, עם מחווני קו CRLF
התאמה אישית של הפלט מתוך פקודת קובץ
כברירת מחדל, פקודת הקובץ מספקת את שם הקובץ ולאחר מכן את כל הפרטים מעל הקובץ. אם אתה רק רוצה את הפרטים ללא שם הקובץ חזר להשתמש במתג הבא:
file -b file1
הפלט יהיה משהו כזה:
PNG נתוני תמונה, 640 x 341, 8-bit / צבע RGB, לא interlaced
ניתן גם לשנות את המפריד בין שם הקובץ לבין הסוג.
כברירת מחדל, התוחם הוא נקודתיים (:) אבל אתה יכול לשנות את זה לכל דבר שאתה אוהב כגון סמל צינור כדלקמן:
קובץ -F '| file1
הפלט יהיה עכשיו משהו כזה:
file1 | PNG נתוני תמונה, 640 x 341, 8-bit / צבע RGB, לא interlaced
טיפול במספר קבצים
כברירת מחדל, תשתמש בפקודת הקובץ כנגד קובץ יחיד. עם זאת, באפשרותך לציין שם קובץ המכיל רשימת קבצים שעובדת על-ידי פקודת הקובץ:
כדוגמה לפתוח קובץ בשם testfiles באמצעות עורך nano ולהוסיף שורות אלה אליו:
- / etc / passwd
- /etc/pam.conf
- / etc / opt
שמור את הקובץ והפעל את פקודת הקובץ הבאה:
file -f testfiles
הפלט יהיה משהו כזה:
/ etc / passwd: טקסט ASCII
/etc/pam.conf: טקסט ASCII
/ etc / opt: מדריך
קבצים דחוסים
כברירת מחדל, כאשר אתה מפעיל את הפקודה הקובץ נגד קובץ דחוס תראה פלט משהו כזה:
zip: ZIP ארכיון נתונים, לפחות V2.0 לחלץ
בעוד זה אומר לך כי הקובץ הוא קובץ ארכיון אתה לא באמת יודע את התוכן של הקובץ. אתה יכול להסתכל בתוך קובץ zip כדי לראות את סוגי הקבצים של הקבצים בתוך הקובץ הדחוס.
הפקודה הבאה מפעילה את פקודת הקובץ כנגד הקבצים בתוך קובץ ZIP:
file-fil filename
הפלט יציג כעת את סוגי הקבצים של הקבצים בתוך הארכיון.
סיכום
באופן כללי, רוב האנשים פשוט פשוט להשתמש בפקודה הקובץ כדי למצוא את סוג הקובץ הבסיסי אבל כדי לברר פרטים נוספים על כל האפשרויות הפקודה הפקודה מציעה את סוג הבא לתוך חלון הטרמינל:
קובץ גבר