Většina lidí se podívá na příponu souboru a pak uhodne typ souboru z této přípony. Například když vidíte soubor s příponou gif, jpg, bmp nebo png, myslíte na soubor obrázku a když vidíte soubor s příponou zip, předpokládáte, že soubor byl komprimován pomocí komprese zip užitečnost. Soubor může používat jednu příponu, ale může to být něco úplně jiného. Linux nepoužívá přípony souborů; spíše je typ souboru součástí názvu souboru. Chcete -li zjistit skutečný typ souboru, použijte soubor příkaz.
Jak funguje příkaz „soubor“
Příkaz file spustí tři sady testů proti souboru:
- Testy souborového systému
- Magické testy
- Jazykové testy
První sada testů pro vrácení platné odpovědi vyzve k vytištění typu souboru. Testy souborového systému zkoumají návrat ze systémového volání stat. Program zkontroluje, zda je soubor prázdný a zda se jedná o speciální soubor. Pokud je typ souboru nalezen v souboru záhlaví systému, je vrácen jako platný typ souboru. Magické testy kontrolují obsah souboru a konkrétně několik bajtů na začátku, které pomáhají určit typ souboru. K přiřazení souboru k jeho typu se používají různé soubory, které jsou uloženy v:
- /etc/magie
- /usr/share/misc/magic.mgc
- /usr/share/různé/magie
Přepište tyto soubory umístěním souboru do své domovské složky s názvem $ HOME/.magic.mgc nebo $ HOME/.magic. Závěrečné testy jsou jazykové testy. Soubor je zkontrolován, aby se zjistilo, zda se jedná o textový soubor. Testováním prvních několika bajtů souboru test odvodí, zda je soubor ve formátu ASCII, UTF-8, UTF-16 nebo v jiném formátu, který identifikuje soubor jako textový soubor. Při odvozování znakové sady je soubor testován v různých jazycích.
Jak používat příkaz „soubor“
The soubor příkaz má následující podobu: název souboru
type = „code“> Například pro kontrolu typu názvu souboru dotek.svg, spusťte následující příkaz: soubor touch.svg
type = „code“> Výstup je něco takového:
- touch.svg: SVG Scalable Vector Graphics image
Různé typy souborů vytvářejí různé výsledky, například:
- Typ souboru ODS: Tabulka OpenDocument
- Typ souboru PDF: Dokument PDF, verze 1.4
- Typ souboru CSV: ASCII text, s velmi dlouhými řádky, s indikátory řádků CRLF
Práce s více soubory
Ve výchozím nastavení pracuje příkaz soubor s jediným souborem. Můžete však zadat název souboru, který obsahuje seznam souborů, které mají být zpracovány souborem soubor příkaz. Otevřete například soubor s názvem testovací soubory pomocí nano editoru a přidejte do něj tyto řádky:
- /etc/passwd
- /etc/pam.conf
- /etc/opt
Uložte soubor a spusťte následující příkaz: file -f testfiles
type = „code“> Výstup bude něco takového:
- /etc/passwd: text ASCII
- /etc/pam.conf: text ASCII
- /etc/opt: adresář
Další metodou je spuštění souboru soubor zadejte jedenkrát, ale určete několik cílů. Například: soubor /etc /passwd /etc/pam.conf /etc /opt
Výstup bude něco takového:
- /etc/passwd: text ASCII
- /etc/pam.conf: text ASCII
- /etc/opt: adresář
Standardní zástupné znaky také fungují. Chcete -li například otestovat všechny soubory v aktuálním pracovním adresáři, použijte: soubor *
Chcete -li otestovat adresáře, které začínají písmenem D (rozlišují velká a malá písmena), zkuste toto: soubor D*
Výsledkem může být například plocha, dokumenty a soubory ke stažení.
Komprimované soubory
Když spustíte soubor příkaz proti komprimovanému souboru uvidíte výstup něco takového:
- file.zip: Data archivu ZIP, k rozbalení alespoň V2.0
I když vám tento výsledek říká, že soubor je archivním souborem, neznáte jeho obsah. Podívejte se dovnitř souboru zip a podívejte se na typy souborů v komprimovaném souboru. Následující příkaz spustí příkaz file proti souborům uvnitř souboru ZIP: soubor -z název_souboru
type = „code“> Výstup nyní zobrazuje typy souborů souborů v archivu.