La commande file est fournie avec de nombreux systèmes Unix et possède une base de données de signatures qu'elle utilise pour identifier la structure d'un fichier inconnu. La commande peut également être utilisée sur un répertoire pour le déterminer en tant que répertoire. La syntaxe de la commande file est très simple :
# file [file or directory]
Exemple :
# file /tmp /tmp: sticky, directory # file /tmp/adobegc.log /tmp/adobegc.log: ASCII text
Il peut également afficher si le fichier est vide, ce qui peut aussi être utile parfois pour trouver des fichiers vides. Il prend également une expression régulière tout en fournissant les noms de fichier ou de répertoire.
file teste chaque argument pour tenter de le classer. Il existe trois séries de tests, effectués dans cet ordre :les tests de système de fichiers, les tests magiques et les tests de langage. Le premier test qui réussit entraîne l'impression du type de fichier.
Le type imprimé contiendra généralement l'un des mots texte (le fichier ne contient que des caractères d'impression et quelques caractères de contrôle courants et peut probablement être lu en toute sécurité sur un terminal ASCII), exécutable (le fichier contient le résultat de la compilation d'un programme sous une forme compréhensible pour un noyau UNIX ou un autre), ou des données signifiant autre chose (les données sont généralement "binaires" ou non imprimables).
exemples de commande de fichier
1. Pour obtenir le type de fichier :
# file file.txt
2. Pour obtenir le type de fichier en bref :
# file -b file.txt # file --brief file.txt
3. Pour compiler un fichier de code C :
# file -C file.c # file --compile file.c
4. Pour provoquer une impression de vérification de la forme analysée du fichier magique :
# file -c file.txt # file --checking-printout file.txt
5. Pour exclure le test nommé dans testname :
# file -e text file.txt # file --exclude text file.txt
nom du test | Description |
---|---|
type d'application | Type d'application EMX (uniquement sur EMX). |
texte | Divers types de fichiers texte (ce test essaiera de deviner l'encodage du texte, quel qu'il soit |
encodage | Différents encodages de texte pour les tests de magie douce. |
jetons | Recherche les jetons connus dans les fichiers texte. |
cdf | Imprime les détails des fichiers de documents composés. |
compresser | Recherche et regarde à l'intérieur des fichiers compressés. |
elfe | Imprime les détails du fichier ELF. |
doux | Consulte les fichiers magiques. |
tar | Examine les fichiers tar. |
6. Pour utiliser la chaîne spécifiée comme séparateur entre le nom du fichier et le résultat du fichier renvoyé :
# file -F " " file.txt # file --separator " " file.txt
7. Lire les noms des fichiers à examiner depuis namefile :
# file -f file.txt # file --files-from file.txt
8. Pour que les liens symboliques ne soient pas suivis :
# file -h file.txt # file --no-dereference file.txt
9. Pour forcer la commande file à produire des chaînes de type mime :
# file -i file.txt # file -mime file.txt
10. Comme -i, mais n'affiche que l'élément spécifié :
# file --mime-type file.txt # file --mime-encoding file.txt
11. Pour ne pas s'arrêter au premier match, continuez :
# file -k file.txt # file --keep-going file.txt
12. L'option To entraîne le suivi des liens symboliques :
# file -L file.txt # file --dereference file.txt
13. Pour spécifier une autre liste de fichiers et de répertoires contenant de la magie :
# file -m magicfile file.txt # file --magic-file magicfile file.txt
14. Pour ne pas remplir les noms de fichiers afin qu'ils s'alignent dans la sortie :
# file -N file.txt # file --no-pad file.txt
15. Pour forcer le vidage de stdout après vérification de chaque fichier :
# file -n file.txt # file --no-buffer file.txt
16. Pour conserver le temps d'accès des fichiers :
# file -p file.txt # file --preserve-date file.txt
17. Ne traduisez pas les caractères non imprimables en \ooo :
# file -r file.txt # file --raw file.txt
18. Pour lire des fichiers spéciaux :
# file -s file.txt # file --special-files file.txt
19. Pour imprimer la version du programme et quitter :
# file -v
20. Pour essayer de regarder à l'intérieur des fichiers compressés :
# file -z file.gz # file --uncompress file.gz
21. Pour afficher un caractère nul 0 après la fin du nom de fichier :
# file -0 file.txt # file --print0 file.txt
22. Pour obtenir l'aide du fichier :
# file --help