Hoe het bestandstype en de codering te bepalen via de opdrachtregel in Mac OS X

Als u het bestandstype en de codering van een item wilt bepalen, kunt u het bestand eenvoudig in Mac Finder bekijken, de bestandsextensie controleren, Info over het bestand opvragen of het zelfs openen om snel te achterhalen wat het bestand is. Dat is natuurlijk beperkt tot het gebruikersvriendelijke bestandssysteem van OS X, en er zijn gelegenheden waarbij het mogelijk nodig is om te detecteren hoe een bestand is gecodeerd of wat een bestandstype is vanaf de opdrachtregel, vaak met minder voor de hand liggende aanwijzingen (of geen aanwijzingen) dan een zichtbare bestandsextensie.


Als u zich in een situatie bevindt waarin u moet uitzoeken wat een bepaald bestand is en hoe het is gecodeerd, kunt u de opdracht 'bestand' met de vlag i in hoofdletters gebruiken om snel te zien wat het bestand is en de tekenset. Als u dit zelf wilt proberen, start u de toepassing Terminal en geeft u de juiste syntaxis uit.

De syntaxis om het bestandstype en het bestandstype van het bestand te bepalen in Mac OS X (en ook van de linux-opdrachtregel) ziet er als volgt uit:

file -I filename

Merk op dat de vlag een hoofdletter 'i' is en niet een kleine letter l. De uitvoer van de correct uitgevoerde opdracht zal als volgt gelezen worden:

/Path/To/Filename: fileformat/filetype; charset=encoding

Laten we een paar voorbeelden bekijken, eerst is het controleren van een bestand dat een afbeelding blijkt te zijn:

file -I ~/Desktop/iphone-plus
/Users/Paul/Desktop/iphone-plus: image/jpeg; charset=binary

Het bestandstype wordt duidelijk weergegeven, net als de tekenset.

Nogmaals, met een ander bestand, dat wordt weergegeven als een xml gecodeerd als us-ascii:

file -I osxdaily.com.webloc
osxdaily.com.webloc: application/xml; charset=us-ascii

Nog een voorbeeld dat een eenvoudig oud tekstbestand blijkt te zijn:

file -I ~/Documents/diywatch
~/Documents/diywatch: text/plain; charset=us-ascii

En nog een voorbeeld dat een uitvoerbare binaire toepassing blijkt te zijn:

file -I /usr/sbin/streamy
/usr/sbin/streamy: application/octet-stream; charset=binary

Deze opdrachtregelbenadering voor het bepalen van bestandstype en codering kan om vele redenen nuttig zijn, of het nu gaat om gebruik in een script, voor het oplossen van problemen op afstand of om onderhoud met ssh, het vinden van specifieke bestandstypen en bestandsindelingen met de ingebouwde zoekfuncties in OS X, of zelfs voor uw eigen doeleinden om te bepalen wat een mysteriebestand is, met welke app om het te openen, en misschien welk extensietype het zou moeten hebben als het er een mist.