file è un comando dei sistemi operativi Unix e Unix-like, e più in generale dei sistemi POSIX[1], che cerca di determinare il tipo di uno o più file a partire dal loro contenuto.
Per ciascuno dei file specificati come parametri viene visualizzata sullo standard output una linea che indica il nome del file seguito da una descrizione testuale dei dati che esso contiene.
Il tipo di file viene determinato esaminando la parte iniziale del contenuto del file, alla ricerca di particolari sequenze di byte che ne rivelino il tipo.