.\" -*- coding: UTF-8 -*- .\" $File: file.man,v 1.151 2024/04/07 21:27:35 christos Exp $ .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .Dd 7 aprilie 2024 .Dt FILE 1 .Os .Sh NUME .Nm file .Nd determină tipul de fișier .Sh SINOPSIS .Nm file .Bk -words .Op Fl bcdEhiklLNnprsSvzZ0 .Op Fl Fl apple .Op Fl Fl exclude-quiet .Op Fl Fl extension .Op Fl Fl mime-encoding .Op Fl Fl mime-type .Op Fl e Ar nume-test .Op Fl F Ar separator .Op Fl f Ar fișier-de-nume .Op Fl m Ar fișiere-magice .Op Fl P Ar nume=valoare .Ar .Ek .Nm file .Fl C .Op Fl m Ar fișiere-magice .Nm file .Op Fl Fl help .Sh DESCRIERE Această pagină de manual documentează versiunea 5.46 a comenzii .Nm . .Pp .Nm file testează fiecare argument în încercarea de a-l clasifica. Există trei seturi de teste, efectuate în această ordine: teste ale sistemului de fișiere, teste magice și teste lingvistice. .Em Primul test care reușește provoacă imprimarea tipului de fișier. .Pp Tipul afișat va conține de obicei unul dintre cuvintele .Em text (fișierul conține doar caractere de imprimare și câteva caractere de control comune și este probabil sigur de citit pe un terminal .Dv ASCII ) , .Em executable (fișierul conține rezultatul compilării unui program într-o formă inteligibilă pentru un nucleu .Tn UNIX sau altul) sau .Em data care înseamnă orice altceva (datele sunt de obicei .Dq binare sau neimprimabile). Excepțiile sunt formate de fișiere bine cunoscute (fișiere core, arhive tar) despre care se știe că conțin date binare. Atunci când modificați fișiere magice sau programul în sine, asigurați-vă că .Em păstrați aceste cuvinte cheie . Utilizatorii depind de faptul că știu că toate fișierele ce se pot citi dintr-un director au imprimat cuvântul .Dq text . Nu faceți ca Berkeley și nu schimbați .Dq shell commands text în .Dq shell script . .Pp Testele sistemului de fișiere se bazează pe examinarea răspunsului la un apel de sistem .Xr stat 2 . Programul verifică pentru a vedea dacă fișierul este gol sau dacă este un fel de fișier special. Orice tip de fișier cunoscut, adecvat sistemului pe care rulați (socluri, legături simbolice sau conducte cu nume (FIFO) pe acele sisteme care le implementează) sunt intuite dacă sunt definite în fișierul de antet al sistemului .In sys/stat.h . .Pp Testele magice sunt utilizate pentru a verifica fișierele cu date în anumite formate fixe. Exemplul canonic este un fișier binar executabil (program compilat) .Dv a.out , al cărui format este definit în .In elf.h , .In a.out.h și eventual în .In exec.h directorul include standard. Aceste fișiere au un .Dq număr magic stocat într-un loc special, aproape de începutul fișierului, care indică sistemului de operare .Tn UNIX că fișierul este un executabil binar și care dintre mai multe tipuri este acesta. Conceptul de număr magic .Dq a fost aplicat prin extensie fișierelor de date. Orice fișier cu un identificator invariabil la un mic decalaj fix în fișier poate fi de obicei descris în acest fel. Informațiile care identifică aceste fișiere sunt citite din fișierul magic compilat .Pa /usr/share/file/misc/magic.mgc sau din fișierele din directorul .Pa /usr/share/file/misc/magic dacă fișierul compilat nu există. În plus, dacă există .Pa $HOME/.magic.mgc sau .Pa $HOME/.magic , acestea vor fi utilizate cu prioritate față de fișierele magice ale sistemului. .Pp Dacă un fișier nu corespunde niciuneia dintre intrările din fișierul magic, acesta este examinat pentru a vedea dacă pare a fi un fișier text. Seturile de caractere ASCII, ISO-8859-x, non-ISO 8-bit extended-ASCII (precum cele utilizate pe sistemele Macintosh și IBM PC), UTF-8-encoded Unicode, UTF-16-encoded Unicode și EBCDIC pot fi deosebite prin diferitele intervale și secvențe de octeți care constituie textul imprimabil în fiecare set. Dacă un fișier trece oricare dintre aceste teste, setul său de caractere este raportat. Fișierele ASCII, ISO-8859-x, UTF-8 și ASCII extins sunt identificate ca .Dq text deoarece vor putea fi citite de aproape orice terminal; UTF-16 și EBCDIC sunt doar .Dq character data deoarece, deși conțin text, acesta va necesita traducere înainte de a putea fi citit. În plus, .Nm file va încerca să determine alte caracteristici ale fișierelor de tip text. Dacă liniile unui fișier sunt terminate prin CR, CRLF sau NEL, în loc de LF, standardul Unix, acest lucru va fi raportat. Fișierele care conțin secvențe de eludare încorporate sau suprapunere (overstriking) vor fi, de asemenea, identificate. .Pp Odată ce .Nm file a determinat setul de caractere utilizat într-un fișier de tip text, acesta va încerca să determine în ce limbă este scris fișierul. Testele de limbă caută anumite șiruri de caractere (cf. .In names.h ) care pot apărea oriunde în primele câteva blocuri ale unui fișier. De exemplu, cuvântul cheie .Em .br indică faptul că fișierul este cel mai probabil un fișier de intrare .Xr troff 1 , la fel cum cuvântul cheie .Em struct indică un program C. Aceste teste sunt mai puțin fiabile decât cele două grupuri anterioare, așa că sunt efectuate la sfârșit. Rutinele de testare a limbii testează, de asemenea, unele tipuri diverse (cum ar fi arhivele .Xr tar 1 , fișierele JSON). .Pp Orice fișier care nu poate fi identificat ca fiind scris în oricare dintre seturile de caractere enumerate mai sus este considerat a fi .Dq data (de date). .Sh OPȚIUNI .Bl -tag -width indent .It Fl Fl apple Face ca comanda .Nm file să emită codul tipului de fișier și al creatorului, așa cum este utilizat de versiunile mai vechi ale MacOS. Codul este format din opt litere, prima descriind tipul de fișier, iar ultima creatorul. Această opțiune funcționează corect numai pentru formatele de fișiere care au definită ieșirea în stil apple. .It Fl b , Fl Fl brief Nu precede liniile de ieșire cu nume de fișiere (mod scurt). .It Fl C , Fl Fl compile Scrie un fișier de ieșire .Pa magic.mgc care conține o versiune pre-analizată a fișierului sau directorului magic. .It Fl c , Fl Fl checking-printout Provoacă o imprimare de verificare a formei analizate a fișierului magic. Aceasta este de obicei utilizată împreună cu opțiunea .Fl m pentru depanarea unui nou fișier magic înainte de a-l instala. .It Fl d Afișează informații interne de depanare la ieșirea de eroare standard. .It Fl E În cazul erorilor din sistemul de fișiere (fișier care nu a fost găsit etc.), în loc să trateze eroarea ca pe o ieșire obișnuită, așa cum impune POSIX, și să meargă mai departe, emite un mesaj de eroare și iese. .It Fl e , Fl Fl exclude Ar nume-test Exclude testul numit în .Ar nume-test din lista de teste efectuate pentru a determina tipul de fișier. Numele valide ale testelor sunt: .Bl -tag -width compress .It apptype Tipul de aplicație .Dv EMX (numai pe EMX). .It ascii Diverse tipuri de fișiere text (acest test va încerca să ghicească codificarea textului, indiferent de valoarea opțiunii .Sq encoding ) . .It encoding Diferite codificări ale textului pentru testele soft-magic. .It tokens Ignorată pentru compatibilitate cu versiunile anterioare. .It cdf Afișează detaliile fișierelor de documente compuse (Compound Documents Files).. .It compress Verifică dacă există fișiere comprimate și caută în interiorul acestora. .It csv Verifică fișierele care conțin valori separate prin virgulă. .It elf Afișează detaliile fișierului ELF, cu condiția ca testele soft-magic să fie activate și ca elf-magic să fie găsit. .It json Examinează fișierele JSON (RFC-7159) prin analizarea lor pentru conformitate. .It soft Consultă fișierele magice. .It simh Examinează fișierele de bandă SIMH. .It tar Examinează fișierele tar prin verificarea sumei de control a antetului tar de 512 octeți. Excluderea acestui test poate oferi o descriere mai detaliată a conținutului prin utilizarea metodei soft-magic. .It text Un sinonim pentru .Sq ascii . .El .It Fl Fl exclude-quiet Ca .Fl Fl exclude , dar ignoră testele despre care .Nm file nu știe. Aceasta este destinată compatibilității cu versiunile mai vechi ale .Nm . .It Fl Fl extension Afișează o listă separată prin bare oblice de extensii valide pentru tipul de fișier găsit. .It Fl F , Fl Fl separator Ar separator Utilizează șirul specificat ca separator între numele fișierului și rezultatul fișierului returnat. Valoarea implicită este .Sq \&: . .It Fl f , Fl Fl files-from Ar fișier-de-nume Citește numele fișierelor care urmează să fie examinate din .Ar fișier-de-nume (unul pe linie) înainte de lista de argumente. Fie .Ar fișier-de-nume , fie cel puțin un argument de nume de fișier trebuie să fie prezent; pentru a examina intrarea standard, utilizați .Sq - ca argument de nume de fișier. Rețineți că .Ar fișier-de-nume este derulat și numele de fișiere incluse sunt procesate atunci când este întâlnită această opțiune și înainte de orice procesare ulterioară a opțiunilor. Acest lucru permite procesarea mai multor liste de fișiere cu diferite argumente de linie de comandă la aceeași invocare .Nm . Astfel, dacă doriți să definiți delimitatorul, trebuie să o faceți înainte de a specifica lista de fișiere, cum ar fi: .Dq Fl F Ar @ Fl f Ar fișier-de-nume , în loc de: .Dq Fl f Ar fișier-de-nume Fl F Ar @ . .It Fl h , Fl Fl no-dereference Această opțiune face ca legăturile simbolice să nu fie urmărite (pe sistemele care acceptă legături simbolice). Aceasta este opțiunea implicită dacă variabila de mediu .Dv POSIXLY_CORRECT nu este definită. .It Fl i , Fl Fl mime Determină comanda .Nm file să emită șiruri de tip mime în loc de cele mai tradiționale care pot fi citite de om. Astfel, aceasta poate spune .Sq text/plain; charset=us-ascii în loc de .Dq ASCII text . .It Fl Fl mime-type , Fl Fl mime-encoding La fel ca .Fl i , dar imprimă numai elementul (elementele) specificat(e). .It Fl k , Fl Fl keep-going Nu se oprește la prima potrivire, continuă. Potrivirile ulterioare vor fi precedate de șirul .Sq „\[rs]012\-” . Dacă doriți o linie nouă, consultați opțiunea .Fl r . Modelul magic cu cea mai mare valoare (consultați opțiunea .Fl l ) apare primul. .It Fl l , Fl Fl list Afișează o listă de modele și valoarea acestora sortate descrescător în funcție de valoarea .Xr magic 5 care este utilizată pentru potrivire (a se vedea și opțiunea .Fl k ) . .It Fl L , Fl Fl dereference Această opțiune face ca legăturile simbolice să fie urmate, la fel ca opțiunea cu nume similar din .Xr ls 1 (pe sistemele care acceptă legături simbolice). Aceasta este opțiunea implicită dacă este definită variabila de mediu .Ev POSIXLY_CORRECT . .It Fl m , Fl Fl magic-file Ar magicfiles Specifică o listă alternativă de fișiere și directoare care conțin magic. Aceasta poate fi un singur element sau o listă separată prin două puncte (:). Dacă un fișier magic compilat este găsit alături de un fișier sau director, acesta va fi utilizat în locul său. .It Fl N , Fl Fl no-pad Nu completează numele fișierelor astfel încât acestea să se alinieze în ieșire. .It Fl n , Fl Fl no-buffer Forțează ca ieșirea standard să fie golită (flushed) după verificarea fiecărui fișier. Acest lucru este util numai dacă se verifică o listă de fișiere Aceasta este destinată utilizării de către programele care doresc o ieșire de tip fișier dintr-o conductă. .It Fl p , Fl Fl preserve-date Pe sistemele care acceptă .Xr utime 3 sau .Xr utimes 2 , încearcă să păstreze timpul de acces al fișierelor analizate, pentru a pretinde că .Nm file nu le-a citit niciodată. .It Fl P , Fl Fl parameter Ar nume=valoare Definește diverse limite ale parametrilor. .Bl -column elf_phnum Default XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .It Sy Nume Ta Sy Valoare-implicită Ta Sy Explicație .It Li bytes Ta 1M Ta numărul maxim de octeți de citit din fișier .It Li elf_notes Ta 256 Ta numărul maxim de note ELF procesate .It Li elf_phnum Ta 2K Ta numărul maxim de secțiuni de program ELF procesate .It Li elf_shnum Ta 32K Ta numărul maxim de secțiuni ELF procesate .It Li elf_shsize Ta 128MB Ta dimensiunea maximă a secțiunii ELF procesate .It Li encoding Ta 65K Ta numărul maxim de octeți pentru determinarea codificării .It Li indir Ta 50 Ta limita de recursiune pentru magia indirectă .It Li name Ta 100 Ta limita numărului de utilizări pentru nume/utilizare magică .It Li regex Ta 8K Ta limita de lungime pentru căutările regex .El .It Fl r , Fl Fl raw Nu transformă caracterele neimprimabile în \eooo. În mod normal, .Nm file transformă caracterele neimprimabile în reprezentarea lor octală. .It Fl s , Fl Fl special-files În mod normal, .Nm file încearcă doar să citească și să determine tipul fișierelor de argumente despre care .Xr stat 2 raportează că sunt fișiere obișnuite. Acest lucru previne problemele, deoarece citirea fișierelor speciale poate avea consecințe deosebite. Specificarea opțiunii .Fl s face ca .Nm file să citească și fișierele argument care sunt fișiere speciale de blocuri sau de caractere. Acest lucru este util pentru determinarea tipurilor de sistem de fișiere ale datelor din partițiile de disc brut, care sunt fișiere speciale de blocuri. De asemenea, această opțiune face ca .Nm file să nu ia în considerare dimensiunea fișierului raportată de .Xr stat 2 , deoarece pe unele sisteme aceasta raportează o dimensiune zero pentru partițiile de disc brut. .It Fl S , Fl Fl no-sandbox Pe sistemele în care libseccomp .Pa ( https://github.com/seccomp/libseccomp ) este disponibilă, opțiunea .Fl S dezactivează bancul de probe (sandboxing) care este activat implicit. Această opțiune este necesară pentru ca .Nm file să execute programe externe de decomprimare, adică atunci când opțiunea .Fl z este specificată și decompresoarele integrate nu sunt disponibile. Pe sistemele în care bancul de probe nu este disponibil, această opțiune nu are niciun efect. .It Fl v , Fl Fl version Afișează versiunea programului și iese. .It Fl z , Fl Fl uncompress Încearcă să caute în interiorul fișierelor comprimate. .It Fl Z , Fl Fl uncompress-noreport Încearcă să caute în interiorul fișierelor comprimate, dar raportează informații numai despre conținut, nu și despre comprimare. .It Fl 0 , Fl Fl print0 Emite un caracter nul .Sq \e0 după sfârșitul numelui fișierului. Frumos pentru ieșirea .Xr cut 1 . Acest lucru nu afectează separatorul, care este în continuare afișat. .Pp Dacă această opțiune este repetată de mai multe ori, atunci .Nm file afișează doar numele fișierului urmat de un NUL urmat de descriere (sau ERROR: text) urmat de un al doilea NUL pentru fiecare intrare. .It Fl -help Imprimă un mesaj de ajutor și iese. .El .Sh MEDIU Variabila de mediu .Ev MAGIC poate fi utilizată pentru a defini numele implicit al fișierului magic. Dacă această variabilă este definită, atunci .Nm file nu va încerca să deschidă .Pa $HOME/.magic . .Nm file adaugă .Dq Pa .mgc la valoarea acestei variabile, după caz. Variabila de mediu .Ev POSIXLY_CORRECT controlează (pe sistemele care acceptă legături simbolice) dacă .Nm file va încerca sau nu să urmeze legături simbolice. Dacă este activată, atunci .Nm file urmează legătura simbolică, altfel nu. Acest lucru este controlat și de opțiunile .Fl L și .Fl h . .Sh FIȘIERE .Bl -tag -width /usr/share/file/misc/magic.mgc -compact .It Pa /usr/share/file/misc/magic.mgc Lista de numere magice compilată implicit. .It Pa /usr/share/file/misc/magic Directorul care conține fișierele magice implicite. .El .Sh STARE DE IEȘIRE .Nm file va ieși cu .Dv 0 dacă operația a avut succes sau .Dv >0 dacă a fost întâlnită o eroare. Următoarele erori provoacă mesaje de diagnosticare, dar nu afectează codul de ieșire din program (așa cum cere POSIX), cu excepția cazului în care este specificată .Fl E : .Bl -bullet -compact -offset indent .It Un fișier nu poate fi găsit .It Nu există permisiunea de a citi un fișier .It Tipul fișierului nu poate fi determinat .El .Sh EXEMPLE .Bd -literal -offset indent $ file file.c file /dev/{wd0a,hda} file.c: C program text file: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), stripped /dev/wd0a: block special (0/0) /dev/hda: block special (3/0) $ file -s /dev/wd0{b,d} /dev/wd0b: data /dev/wd0d: x86 boot sector $ file -s /dev/hda{,1,2,3,4,5,6,7,8,9,10} /dev/hda: x86 boot sector /dev/hda1: Linux/i386 ext2 filesystem /dev/hda2: x86 boot sector /dev/hda3: x86 boot sector, extended partition table /dev/hda4: Linux/i386 ext2 filesystem /dev/hda5: Linux/i386 swap file /dev/hda6: Linux/i386 swap file /dev/hda7: Linux/i386 swap file /dev/hda8: Linux/i386 swap file /dev/hda9: empty /dev/hda10: empty $ file -i file.c file /dev/{wd0a,hda} file.c: text/x-c file: application/x-executable /dev/hda: application/x-not-regular-file /dev/wd0a: application/x-not-regular-file .Ed .Sh CONSULTAȚI ȘI .Xr hexdump 1 , .Xr od 1 , .Xr strings 1 , .Xr magic 5 .Sh CONFORMAREA CU STANDARDELE .\" URL: http://www.opengroup.org/onlinepubs/009695399/utilities/file.html Se consideră că acest program depășește definiția interfeței FILE(CMD) a Sistemului V, în măsura în care se poate determina din limbajul vag conținut în acesta. Comportamentul său este în mare parte compatibil cu programul System V cu același nume. Cu toate acestea, această versiune cunoaște mai multă magie, astfel încât va produce rezultate diferite (deși mai precise) în multe cazuri. .Pp Singura diferență semnificativă între această versiune și System V este că această versiune tratează orice spațiu alb ca delimitator, astfel încât spațiile din șirurile de modele trebuie eludate. De exemplu, .Bd -literal -offset indent \*[Gt]10 string language impress\ (imPRESS data) .Ed .Pp într-un fișier magic existent ar trebui să fie modificat în .Bd -literal -offset indent \*[Gt]10 string language\e impress (imPRESS data) .Ed .Pp În plus, în această versiune, dacă un șir de modele conține o bară oblică inversă, aceasta trebuie să fie eludată. De exemplu .Bd -literal -offset indent 0 string \ebegindata Andrew Toolkit document .Ed .Pp într-un fișier magic existent ar trebui să fie modificat în .Bd -literal -offset indent 0 string \e\ebegindata Andrew Toolkit document .Ed .Pp Versiunile SunOS 3.2 și ulterioare de la Sun Microsystems includ o comandă .Nm file derivată din cea System V, dar cu unele extensii. Această versiune diferă de cea a Sun doar în moduri minore. Ea include extensia operatorului .Sq \*[Am] , utilizat ca, de exemplu, .Bd -literal -offset indent \*[Gt]16 long\*[Am]0x7fffffff \*[Gt]0 not stripped .Ed .Sh SECURITATE Pe sistemele pe care este disponibilă libseccomp .Pa ( https://github.com/seccomp/libseccomp ) , .Nm file impune limitarea apelurilor de sistem doar la cele necesare pentru funcționarea programului. Această aplicare nu oferă niciun beneficiu de securitate atunci când .Nm file este solicitat să decomprime fișiere de intrare care rulează programe externe cu opțiunea .Fl z . Pentru a permite executarea decompresoarelor externe, trebuie să se dezactiveze bancul de probe utilizând opțiunea .Fl S . .Sh DIRECTORUL MAGIC Fișierele magice au fost colectate din diverse surse, în special din USENET, și au fost completate de diverși autori. Christos Zoulas (adresa de mai jos) va colecta înregistrări suplimentare sau corectate ale fișierelor magice. O consolidare a intrărilor în fișierele magice va fi distribuită periodic. .Pp Ordinea intrărilor în fișierul magic este semnificativă. În funcție de sistemul pe care îl utilizați, ordinea în care sunt puse împreună poate fi incorectă. Dacă vechea dvs. comandă .Nm file utilizează un fișier magic, păstrați vechiul fișier magic pentru comparație (redenumiți-l în .Pa /usr/share/file/misc/magic.orig ) . .Sh ISTORIC A existat o comandă .Nm file în fiecare .Dv UNIX cel puțin de la versiunea Research 4 (pagina de manual din noiembrie 1973). Versiunea System V a introdus o schimbare majoră semnificativă: lista externă de tipuri magice. Aceasta a încetinit ușor programul, dar l-a făcut mult mai flexibil. .Pp Acest program, bazat pe versiunea System V, a fost scris de Ian Darwin .Aq ian@darwinsys.com fără să se uite la codul sursă al altcuiva. .Pp John Gilmore a revizuit codul în detaliu, îmbunătățindu-l față de prima versiune. Geoff Collyer a găsit câteva neajunsuri și a furnizat câteva intrări magice în fișiere. Contribuții ale operatorului .Sq \*[Am] de Rob McMahon, .Aq cudcv@warwick.ac.uk , 1989. .Pp Guy Harris, .Aq guy@netapp.com , a făcut multe schimbări din 1993 până în prezent. .Pp Dezvoltarea inițială și întreținerea din 1990 până în prezent de Christos Zoulas .Aq christos@astron.com . .Pp Modificat de Chris Lowth .Aq chris@lowth.com , 2000: gestionează opțiunea .Fl i pentru a emite șiruri de tip mime, utilizând un fișier magic alternativ și o logică internă. .Pp Modificat de Eric Fischer .Aq enf@pobox.com , iulie 2000, pentru a identifica codurile de caractere și a încerca să identifice limbile fișierelor non-ASCII. .Pp Modificat de Reuben Thomas .Aq rrt@sc3d.org , 2007-2011, pentru a îmbunătăți suportul MIME, a fuziona magia MIME și non-MIME, pentru a accepta directoare, precum și fișiere de magie, a aplica multe corecturi de erori, a actualiza și corecta o mulțime de numere magice, a îmbunătăți sistemul de construcție, a îmbunătăți documentația și a rescrie legăturile Python în Python pur. .Pp Lista contribuitorilor la directorul .Sq magic (fișiere magice) este prea lungă pentru a fi inclusă aici. Știți cine sunteți; vă mulțumim. Numeroși colaboratori sunt enumerați în fișierele sursă. .Sh NOTIFICARE JURIDICĂ Drepturi de autor © Ian F. Darwin, Toronto, Canada, 1986-1999. Protejat de drepturile de autor standard Berkeley Software Distribution; a se vedea fișierul COPYING din distribuția sursei. .Pp Fișierele .Pa tar.h și .Pa is_tar.c au fost scrise de John Gilmore din programul său public .Xr tar 1 și nu sunt protejate de licența de mai sus. .Sh ERORI Vă rugăm să raportați erorile și să trimiteți corecții la sistemul de urmărire a erorilor la .Pa https://bugs.astron.com/ sau la lista de discuții la .Aq file@astron.com (vizitați mai întâi .Pa https://mailman.astron.com/mailman/listinfo/file pentru a vă abona). .Sh DE FĂCUT Remedierea ieșirii astfel încât testele pentru fanioanele MIME și APPLE să nu fie necesare peste tot, iar ieșirea efectivă să se facă într-un singur loc. Acest lucru necesită un design. Sugestie: împingeți ieșirile posibile pe o listă, apoi alegeți ultima valoare împinsă (cea mai specifică, se speră) la sfârșit sau utilizați o valoare implicită dacă lista este goală. Acest lucru nu ar trebui să încetinească evaluarea. .Pp Gestionarea .Dv MAGIC_CONTINUE și imprimarea \e012- între intrări este stângace și complicată; restructurați și centralizați. .Pp O parte din logica de codare este codificată în encoding.c și poate fi mutată în fișierele magice dacă am avea o adnotare !:charset. .Pp Să se continue eliminarea tuturor erorilor de numere magice. Consultați Debian BTS pentru o sursă bună. .Pp Stocarea șirurilor arbitrar de lungi, de exemplu pentru modele %s, astfel încât acestea să poată fi imprimate. Rezolvă eroarea Debian #271672. Acest lucru poate fi realizat prin alocarea șirurilor într-un grup de șiruri, stocarea grupului de șiruri la sfârșitul fișierului magic și convertirea tuturor indicatorilor de șiruri în distanțe relative din grupul de șiruri. .Pp Adăugarea sintaxei pentru decalaje relative după nivelul curent (eroarea Debian #466037). .Pp Fă ca «file -ki» să funcționeze, adică să ofere mai multe tipuri MIME. .Pp Adaugă o bibliotecă zip pentru a putea arunca o privire în interiorul documentelor Office2007 pentru a imprima mai multe detalii despre conținutul acestora. .Pp Adaugă o opțiune de imprimare a adreselor URL pentru sursele de descriere a fișierelor. .Pp Combină căutările de scripturi și adaugă o modalitate de corelare a numelor executabile cu tipurile MIME (de exemplu, o valoare magică pentru !:mime care face ca șirul rezultat să fie căutat într-un tabel). Acest lucru ar evita adăugarea aceleiași valori magice în mod repetat pentru fiecare nou interpret hash-bang. .Pp Atunci când un descriptor de fișier este disponibil, putem omite și ajusta memoria tampon în loc de gestionarea memoriei tampon pe care o facem acum. .Pp Corectarea .Dq name și .Dq use pentru a verifica coerența la momentul compilării ( .Dq name duplicat, .Dq use care indică .Dq name nedefinit ). Fă .Dq name / .Dq use mai eficient prin păstrarea unei liste sortate de nume. Cazul special „^” pentru a inversa ordinea de biți „endianness” în analizor, astfel încât să nu trebuiască să fie eludat, și documentează-l. .Pp Dacă decalajele specificate intern în fișier depășesc dimensiunea memoriei tampon (variabila .Dv HOWMANY din file.h), atunci nu căutăm la acel decalaj, ci renunțăm. Ar fi mai bine dacă gestionarea memoriei tampon s-ar face atunci când descriptorul de fișier este disponibil, astfel încât să putem căuta în jurul fișierului. Trebuie totuși să fim atenți, deoarece acest lucru are considerente de performanță și, prin urmare, de securitate, deoarece se pot încetini lucrurile prin căutarea repetată. .Pp Acum există suport pentru păstrarea unor tampoane separate și pentru a avea distanțe de la sfârșitul fișierului, dar gestionarea internă a tampoanelor necesită încă o revizuire. .Sh DISPONIBILITATE Puteți obține ultima versiune a autorului original prin FTP anonim la adresa .Pa ftp.astron.com în directorul .Pa /pub/file/file-X.YZ.tar.gz . .Pp .Sh TRADUCERE Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu . .Pp Această traducere este documentație gratuită; citiți .Lk https://www.gnu.org/licenses/gpl-3.0.html Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE. .Pp Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la .Mt translation-team-ro@lists.sourceforge.net .Me .