GNU/Linux >> Znalost Linux >  >> Linux

Linux File Command:Co dělá a jak jej používat

Linux může být docela komplikovaný, protože ke správě operačního systému potřebujete používat příkazy Linuxu. Jedním z nich je příkaz file.

Příkaz soubor má širokou škálu použití. V podstatě kontroluje typ souboru a podává zprávy v jednoduchém formátu. Příkaz také uvádí důvod, proč soubor nelze přečíst, a odhalí skutečný typ souboru v případě, že byl přejmenován.

V tomto tutoriálu se naučíte základy používání příkazu file a jak může posílit vaši správu VPS a provoz Linuxu.

Co přesně dělá příkaz Linux File?

Názvy souborů v systému UNIX mohou být zcela nezávislé na typu souboru. Například soubor s názvem example.zip může být ve skutečnosti textový soubor místo archivu, jak by se dalo očekávat. Ve skutečnosti soubory nemohou mít vůbec žádnou příponu.

Díky tomu je obtížné určit skutečný typ souboru. Zde se hodí příkaz file. Odhalí, jaký je typ souboru – zda ​​jde o zvuk, otevřený dokument, tabulkový procesor nebo soubor textového editoru.

Příkaz file prozkoumá každý argument a provede tři sady testů k určení typu souboru. První, který uspěje, spustí výstup s typem souboru.

  • Test systému souborů – tento test zkoumá návrat ze systémového volání stat. Program zkontroluje, zda je soubor prázdný nebo zda se jedná o speciální typ souboru. Hledá také všechny známé typy souborů relevantní pro systém, na kterém pracujete, pokud jsou uvedeny v souboru záhlaví.
  • Magický test – každý soubor má magická čísla přiloženo na začátku. Jsou to speciální hodnoty v pevném uspořádání, které odpovídají různým typům souborů. Příkaz file má databázi obsahující všechna magická čísla umístěnou v datovém souboru /usr/share/misc/magic . Když je příkaz file spuštěn, systém s ním porovná magická čísla zadaného souboru.
  • Jazykový test – tento test zkoumá znakové sady, ve kterých je soubor zapsán, jako je ASCII nebo UTF-8. Test hledá speciální sekvence, které se objeví kdekoli v prvních několika řádcích. Tento test je méně přesný než předchozí dva testy, proto se provádí jako poslední.

Vysvětlení syntaxe příkazů souborů Linux

Chcete-li použít souborový příkaz na svém hostingu VPS, musíte se k němu připojit pomocí klienta SSH, jako je PuTTY.

Jakmile se připojíte, můžete použít příkaz file na terminálu. Než začnete, měli byste však pochopit syntaxi příkazu:

file [options] [file name]
  • soubor – dává terminálu pokyn k provedení příkazu souboru.
  • [možnosti] – zde můžete do příkazu přidat proměnné.
  • [název souboru] – zadejte soubor, který chcete zkontrolovat.

Výstup příkazu file zobrazuje typ souboru ve standardním formátu. Může také poskytovat další informace, jako jsou data uložená v komprimovaném souboru, velikost nebo verze souboru v závislosti na použitých možnostech.

Abychom předvedli příkaz Linux file, vytvoříme vzorový textový soubor. Následující příkaz bude fungovat, pokud máte nainstalovaný textový editor Nano:

nano test.txt

Příkazový řádek otevře nový soubor v textovém editoru Nano. Napište několik řádků textu a stiskněte CTRL+X a Y pro ukončení a uložení souboru.

Nyní pomocí nejzákladnější formy příkazu file zkontrolujeme text.txt soubor:

file test.txt

Ve výstupu uvidíme, že se jedná o textový soubor ve formátu ASCII.

Způsoby použití příkazu souboru Linux

Syntaxe příkazu souboru neomezuje jeho použití pouze na kontrolu typu souboru. Jak jste si možná všimli, existují [možnosti] sekce v syntaxi, kde můžete přidat další proměnné. Zahrnutí této možnosti vám umožní provádět různé úlohy pomocí příkazu file

Existuje mnoho možností, které můžete použít s příkazem Linux file, ale zde je rychlý přehled těch nejčastěji používaných:

  • -b – načte krátký popis typu souboru.
  • soubor * – uvádí typy všech souborů v adresáři.
  • -i – zobrazuje typ souboru MIME.
  • -s – používá se pro speciální soubory.
  • -z – prohlíží komprimované soubory.
  • –pomoc – otevře příručku pro příkaz file. Uvidíte další možnosti a jejich použití.

Nyní se podrobně podíváme na každou možnost a jak ji používat.

Zkontrolujte typ souboru

Příkaz file v Linuxu je cenný, protože názvy souborů v UNIXu nemusí nutně souviset s jejich typem souboru. Může zde být například test.zip soubor, který uživatel přejmenoval na test.csv. V tomto případě může následující příkaz zjistit skutečný typ souboru:

soubor test.csv

Výstup bude definovat, že test.csv soubor je ve skutečnosti .zip soubor:

Tento příkaz vypíše název souboru a jeho typ. Pokud chcete zobrazit pouze typ souboru, použijte -b volba v terminálu spolu s názvem souboru:

file –b test.txt

Výstup uvádí pouze text ASCII bez názvu souboru.

Vypsat typ souboru více souborů

Příkaz file může také pracovat s více soubory dostupnými v systému, s výstupem pro každý soubor na samostatném řádku. Chcete-li to provést, jednoduše nahraďte proměnnou zástupným znakem * :

file *.txt

Výstup bude obsahovat informace o všech souborech .txt soubory v aktuálním adresáři.

Tento příkaz můžete použít k zobrazení seznamu všech souborů v adresáři přidáním názvu adresáře před * . Do příslušného adresáře nemusíte přecházet.

Pokud například chcete v Testu vypsat všechny textové soubory ASCII adresáře, můžete použít následující příkaz z kořenového nebo jiného adresáře:

file Test/*.txt

Výstup bude vypadat takto:

Určení typu souboru MIME

Volba i se používá k zobrazení typu souboru MIME. MIME je standardní způsob klasifikace typů souborů na internetu a skládá se ze dvou částí – typů a podtypů.

Příkaz bude vypadat takto:

file –i test.txt

Zde je výstup pro výše uvedený příkaz:

Všimněte si, že namísto deklarování formátu souboru jako textu ASCII se soubor definuje jako text/prostý a charset=us-ascii .

Číst speciální typ souboru

Příkaz file je užitečný pro analýzu běžných souborů. Neumí však číst blokové nebo znakové speciální soubory. Pokud u některého z nich použijete příkaz file, sdělí vám pouze, že se jedná o speciální blokový nebo znakový soubor.

Pokud použijeme jednoduchý souborový příkaz na /dev/ploop19269 , speciální blokový soubor, výstup bude vypadat takto:

Ke čtení těchto speciálních souborů použijte -s možnost:

file –s /dev/ploop19269

Jak vidíte, výstup je mnohem podrobnější. Označuje, že ploop19269 je spouštěcí sektor DOS/MBR.

Číst uvnitř komprimovaného souboru

Existují dva způsoby, jak číst komprimované soubory, jako je .zip nebo gzip archiv. -z Tato volba se používá ke zjištění informací o obsahu komprimovaných souborů spolu s podrobnostmi o kompresi. Pomocí možnosti -Z zobrazí pouze obsah.

Zde je příkaz pro čtení úplných podrobností komprimovaného souboru:

file -z test.gz

Níže je výstup. Všimněte si, že určuje, že test.gz je .gzip komprimovaný soubor, který obsahuje soubor.txt .

Nyní to porovnejme s -Z možnost:

file -Z test.gz

Tento příkaz vytiskne pouze typ souboru v test.gz – ASCII text.

Závěr

Linux file command pomáhá uživatelům správně identifikovat soubory. To je zvláště užitečné, protože názvy souborů a přípony se mohou zcela lišit od skutečných typů souborů na systémech podobných UNIXu.

Při použití příkazu file nezapomeňte použít vhodné volby a zadat správný název souboru. Terminál Linux rozlišuje velká a malá písmena, takže dávejte pozor na velká a malá písmena.

Doufáme, že vám tento článek pomohl dozvědět se více o různých typech souborů ve vašem systému a zlepšit vývoj vašich projektů.


Linux
  1. Co je příkaz Chown v Linuxu a jak jej používat

  2. Co je příkaz cURL a jak jej používat?

  3. Jak používat Su Command v Linuxu

  1. Jak používat příkaz md5sum v Linuxu

  2. Jak používat dotykový příkaz v Linuxu

  3. Jak používat příkaz Tar v Linuxu

  1. Jak používat příkaz Linux head

  2. Jak používat příkaz Linux diff

  3. Linux Tail Command:Co to je a jak jej používat