Sådan fastlægges filtype og kodning fra kommandolinje i Mac OS X

Typisk hvis du søger for at bestemme filtypen og kodningen af ​​et emne, kan du bare se på filen i Mac Finder, kontrollere filnavnet, Få oplysninger om filen eller endda åbne den for hurtigt at finde ud af, hvad filen er. Det er selvfølgelig begrænset til det brugervenlige filsystem af OS X, og der er lejligheder, hvor det kan være nødvendigt at opdage, hvordan en fil er kodet eller hvad en filtype er fra kommandolinjen, ofte med mindre tydelige spor (eller nej spor i det hele taget) end en synlig filtypenavn.


Hvis du er i en situation, hvor du skal finde ud af, hvad en bestemt fil er, og hvordan den er kodet, kan du bruge kommandoen 'fil' med ikonet for store ikoner for hurtigt at se, hvad filen er, og den er tegnsæt. For at prøve det selv skal du starte Terminal-applikationen og udstede den korrekte syntaks.

Syntaxen til at bestemme filkodningstype og filtype i Mac OS X (og også fra Linux-kommandolinjen) ser ud som følgende:

file -I filename

Bemærk, at flag er en hovedstad 'jeg' og ikke en lille bogstaver l. Udgangen af ​​den korrekt udførte kommando vil læses som følger:

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

Lad os se på et par eksempler, først kontrollerer du en fil, der viser sig at være et billede:

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

Filtypen er tydeligt vist, ligesom tegnsættet.

Igen, med en anden fil, som viser som en xml kodet som us-ascii:

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

Et andet eksempel, der viser sig at være en almindelig gammel tekstfil:

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

Og et andet eksempel, der viser sig at være en eksekverbar binær applikation:

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

Denne kommandolinje tilgang til at bestemme filtype og kodning kan være nyttig af mange årsager, uanset om det bruges i et script, til fjernfejlfinding eller vedligeholdelse med ssh, at finde bestemte filtyper og filformater med de indbyggede søgefunktioner i OS X, eller endda til eget formål at bestemme, hvad en mysteryfil er, hvilken app at åbne den med, og måske hvilken udvidelsestype den skal have, hvis den mangler en.