Burada% 100 siyah veya beyaz cevap yok.
Genellikle Linux, dosya adlarına (ve dosya uzantılarına, yani normalde son dönemden sonra dosya adının bir kısmına) güvenmez ve bunun yerine, içeriğinin ilk birkaç baytını inceleyerek dosya türünü belirler. ve bunu bilinen sihirli numaralar listesine göre karşılaştırmak.
Örneğin, tüm Bitmap görüntü dosyaları (genellikle
.bmp isim uzantısına sahip), ilk iki baytında
BM harfiyle başlamalıdır. Bash, Python, Perl, AWK, vb. Gibi çoğu betik dilinde betikler (temel olarak yorum olarak
# ile başlayan satırları işleyen her şey) ilk satır olarak
#!/bin/bash gibi bir shebang içerebilir. Bu özel yorum, dosyayı hangi uygulamanın açacağını söyler.
Yani normalde, işletim sistemi dosya türünü belirlemek için dosya içeriğine değil, dosya içeriğine dayanır, ancak Linux'ta dosya uzantılarına asla gerek duyulmadığını bildirmek, gerçeğin sadece yarısıdır.
Başvurular, dosya isimlerini ve uzantılarını doğrulamayı da içeren dosya kontrollerini gerçekleştirebilirler. Bir örnek, Gnome'nin Gözü (
eog , standart resim görüntüleyici) olup, dosya formatı ile görüntü formatını belirler ve içeriğe uymuyorsa bir hata atar. Bunun bir hata mı yoksa bir özellik mi olduğu tartışılabilir ...
Ancak, işletim sisteminin bazı bölümleri dosya adı uzantılarına, ör. Yazılım kaynak dosyalarınızı
/etc/apt/sources.list.d/ 'de ayrıştırırken - sadece
*.list uzantılı dosyalar ayrıştırılırken diğerleri yok sayılır. Buradaki dosya türünü belirlemek için değil, bazı dosyaların ayrıştırılmasını etkinleştirmek / devre dışı bırakmak için kullanılmaz, ancak yine de sistemin bir dosyaya nasıl davrandığını etkileyen bir dosya uzantısıdır.
Ve tabii ki insan kullanıcı dosya uzantılarından en çok kazanç sağlar, çünkü bir dosya türünü belirginleştirir ve aynı temel ada sahip birden çok dosyaya ve
site.html ,
site.php ,
site.js ,% gibi farklı uzantılara izin verir. co_de% vb. Dezavantaj, elbette, dosya uzantısı ve gerçek dosya tipi / içeriğinin mutlaka eşleşmesi gerekmemektedir.
Ayrıca, örneğin platformlar arası birlikte çalışabilirlik için gereklidir. Windows,
site.css dosyasıyla ne yapacağını bilmez, ancak yalnızca
readme .