draft: file
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"title": "file",
|
||||||
|
"slug": "file",
|
||||||
|
"_updated_at": "2026-05-16 17:14:39"
|
||||||
|
}
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
# file
|
||||||
|
|
||||||
|
La commande `file` sous Linux identifie le type d'un fichier en analysant son contenu plutôt que son extension. Elle s'appuie sur une base de signatures (les *magic numbers*) pour reconnaître textes, exécutables, images, archives, fichiers audio ou vidéo, et bien d'autres formats.
|
||||||
|
|
||||||
|
## Syntaxe
|
||||||
|
|
||||||
|
```
|
||||||
|
file [options] nom_du_fichier
|
||||||
|
```
|
||||||
|
|
||||||
|
La sortie donne une description concise du type détecté et, lorsque c'est pertinent, du format ou de l'encodage employé.
|
||||||
|
|
||||||
|
## Exemple
|
||||||
|
|
||||||
|
```
|
||||||
|
$ file /usr/sbin/poweroff
|
||||||
|
/usr/sbin/poweroff: symbolic link to `../bin/systemctl'
|
||||||
|
```
|
||||||
|
|
||||||
|
Ici, `file` indique qu'il s'agit d'un lien symbolique pointant vers `systemctl` — utile pour comprendre rapidement la structure d'un système.
|
||||||
|
|
||||||
|
## Options utiles
|
||||||
|
|
||||||
|
- `-i` : affiche le type MIME (`text/plain`, `image/png`, etc.), pratique pour les scripts.
|
||||||
|
- `-b` : sortie « brève », sans le nom du fichier en préfixe.
|
||||||
|
- `-f liste.txt` : traite chaque chemin listé dans le fichier `liste.txt`.
|
||||||
|
|
||||||
|
## Pourquoi c'est utile
|
||||||
|
|
||||||
|
Contrairement à une simple lecture de l'extension, `file` détecte le type réel d'un fichier. C'est précieux pour :
|
||||||
|
|
||||||
|
- vérifier qu'un fichier téléchargé correspond à ce qu'il prétend être ;
|
||||||
|
- identifier un binaire inconnu lors d'une analyse forensique ;
|
||||||
|
- automatiser le tri de fichiers dans un script shell.
|
||||||
Reference in New Issue
Block a user