„File (Unix)” változatai közötti eltérés
[ellenőrzött változat] | [ellenőrzött változat] |
Tartalom törölve Tartalom hozzáadva
Nincs szerkesztési összefoglaló |
|||
1. sor:
{{kisbetűscím}}
A '''<tt>file</tt>''' egy standard [[Unix]] parancs, mely a fájl típusának meghatározására használható.
== Története ==
7. sor:
Ezt a programot a System V változat alapján Ian Darwin készítette, a nélkül, hogy bárkinek a forráskódját látta volna.
John Gilmore tüzetesen átnézte a kódot, és javított rajta az első változathoz képest. Geoff Collyer talált benne több pontatlanságot, és néhány bejegyzéssel gyarapította a bűvös fájlt. A program azóta is folyamatos fejlesztés alatt áll.
== Használata ==
A parancs általános alakja:
'''file''' [ -vczL ] [ -f fájlnévlista ] [ -m
A '''file''' parancs teszteli minden argumentumát és megpróbálja kategorizálni ezeket. Három teszt sorozatot hajt végre, a
A kiírt eredmény általában a következő szavak egyikét fogja tartalmazni: '''text''' (a fájl csak karaktereket tartalmaz, és valószínűleg olvasható terminálon), '''executable''' (a fájl program fordítás eredményét tartalmazza, mely értelmes valamilyen [[UNIX]] kernel számára) vagy '''data''', ami bármi mást jelenthet (a data típus általában `bináris' vagy nem-nyomtatható). Kivételt képeznek a jól ismert bináris fájl formátumok (pl. core fájlok, tar archívumok). Ha változtatsz a '''/etc/magic''' fájlon vagy magán a programon, tartsd meg ezeket a "kulcsszavakat".
A fájlrendszer tesztek eredménye a '''stat'''
A bűvösszám tesztekkel a program adott állandó formátumú fájlokat próbál azonosítani. Erre a legkézenfekvőbb példa egy végrehajtható bináris (lefordított program) a.out állomány, aminek a formátumát az a.out.h tartalmazza, és esetleg az exec.h az alapértelmezett "include" könyvtárban. Ezek a fájlok tartalmaznak egy bűvös számot, egy adott helyen, valahol a fájl eleje táján, ami megmondja a UNIX operációs rendszernek, hogy egy bináris futtatható programról van szó, valamint hogy pontosan melyik fajtáról ezek közül. A ’bűvös szám’ elvét kiterjesztették más (bináris) adatokat tartalmazó fájlokra is. Általában bármilyen fájlt azonosíthatunk ezzel a módszerrel, ha tartalmaz egy állandó azonosítót egy meghatározott (a fájl elejéhez közel lévő) helyen. Az ehhez szükséges adatokat a program a /etc/magic fájlból olvassa.
Ha az egyik tesztelt fájl szövegnek tűnik, a file megpróbálja a nyelvét megállapítani. A nyelv tesztek különleges, a nyelvekre jellemző karakterláncokra keresnek (lásd names.h ) a fájl első néhány blokkjában. Például a
kulcsszó arra enged következtetni, hogy valószínűleg egy troff (1) bemeneti fájlról van szó, míg a struct kulcsszó C program forrásra utal. Ezek a tesztek kevésbé megbízhatóak mint az
== Opciók ==
*'''-v, --version'''
Kiírja a program verzióját és kilép.
*'''-m, --magic-file lista '''
Másik bűvös számokat tartalmazó fájl/fájlok megadása. Több fájl esetén a fájlneveket kettősponttal kell elválasztani.
*'''-z, --uncompress '''
Megpróbál tömörített fájlokat is azonosítani.
*'''-c, --checking-printout '''
*'''-f, --files-from fájlnévlista '''
A megvizsgálandó fájlok nevét a fájlnévlista nevű fájlból olvassa (soronként egy fájlnév), majd az argumentum listából. Vagy a fájlnévlista vagy legalább egy fájlnév argumentumnak jelen kell lennie. A szabványos bemenet olvasásához használd a ``-'' jelet a fájlnév argumentum helyén.
*'''-L, --dereference '''
49. sor:
# file program
program: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked
(uses shared libs), stripped
|