Jako správce systému byste obvykle většinu času pracovali v prostředí příkazového řádku a jednou ze základních dovedností je navigace v systému souborů. S dir
příkaz v Linuxu, jste o krok blíže k zvládnutí této dovednosti.
dir
umožňuje zobrazit obsah adresáře, což je užitečný příkaz, který poznáte při hledání souborů a složek ve vašem systému. A v tomto tutoriálu se pomocí řady příkladů naučíte, jak se pohybovat v systému souborů.
Připraveni? Zůstaňte naladěni a nikdy se nenechte zmást při hledání souborů a složek!
Předpoklady
Tento tutoriál bude praktickou ukázkou. Pokud chcete pokračovat, ujistěte se, že máte systém Linux. Tento tutoriál používá Ubuntu 20.04, ale bude fungovat jakákoli moderní distribuce Linuxu.
Výpis souborů a složek (základní příkaz dir v Linuxu)
Nejzákladnější použití dir
příkaz je vypsat soubory a složky v aktuálním adresáři, což je užitečné, zvláště pokud pracujete v terminálu.
Základní syntaxe pro dir
příkaz je následující kde:
– je cesta k adresáři, který chcete vypsat– je volitelný parametr pro řízení chování
dir
příkaz (bude podrobněji popsán později).
dir
Předpokládejme, že chcete vidět všechny soubory a složky v aktuálním pracovním adresáři. Pokud ano, budete potřebovat jen minimum.
Spusťte dir
příkaz níže bez možností a bez cesty k seznamu všech souborů a složek ve vašem pracovním adresáři.
dir
Níže uvedený výstup zobrazuje názvy všech souborů a složek ve vašem aktuálním adresáři, v tomto případě ve vašem domovském (kořenovém) adresáři.

Výpis souborů a adresářů na konkrétní cestě
Možná budete chtít vypsat všechny soubory a složky v konkrétní cestě spíše než ty ve vašem aktuálním pracovním adresáři. V takovém případě připojte
možnost se hodí.
Můžete použít absolutní cestu nebo relativní cestu s dir
příkaz:
- Absolutní cesta je úplná cesta z kořenového adresáře vašeho systému souborů.
- Relativní cesta je cesta z vašeho aktuálního pracovního adresáře.
Spusťte níže uvedený dir
příkaz pro výpis souborů a adresářů pod /etc
adresář.
dir ~ /etc

Výpis skrytých souborů a adresářů
Možná jste si všimli, že když spustíte dir
bez jakýchkoli voleb, uvidíte pouze viditelné soubory uvedené ve výstupu. Ale co skryté soubory?
V Linuxu začínají skryté soubory a adresáře znakem „.“ (tečka). Tyto soubory a adresáře jsou obvykle konfigurační soubory nebo složky.
Spusťte následující dir
příkaz k zobrazení seznamu všech souborů a adresářů, včetně skrytých (-a
).
dir -a
Níže uvedený výstup zobrazuje všechny soubory a adresáře ve vašem aktuálním adresáři, včetně skrytých, jako je .bashrc, konfigurační soubor pro prostředí Bash.
Na začátku seznamu můžete také vidět dva symbolicky propojené (symlinky) adresáře, které se nazývají:
Symlink | Popis |
. | Odkaz na váš aktuální adresář |
. . | Odkaz na nadřazený adresář vašeho aktuálního adresáře |

Možná byste raději vyloučili symbolické odkazy ze seznamu. Pokud ano, spusťte stejný příkaz dir, ale tentokrát přidejte volbu -A velkými písmeny. dir -A

Načítání podrobného seznamu souborů a adresářů
Výstup ze spuštění dir
Příkaz je užitečný, ale může být matoucí a náročné určit, který je který, zvláště když existuje mnoho souborů a adresářů. Jako řešení přidejte -l
možnost ve vašem dir
příkaz.
Spuštěním níže uvedeného příkazu zobrazíte seznam všech adresářů a souborů a jejich podrobné informace.
dir -l
Jak můžete vidět níže, každý soubor a adresář je uveden na samostatném řádku. Všimněte si formátu každé položky (Počítač , například) níže.
Toto chování je výhodné, když se chcete rychle podívat na oprávnění k souboru nebo adresáři.
Oprávnění | Vlastník | Vlastník skupiny | Velikost | Datum a čas poslední změny |
drwxr-xr-x | kořen | kořen | 4096 | 16. července 16:45 |
Některé z těchto sloupců nemusí obsahovat žádné informace. Proč? Ne všechny typy souborů mají oprávnění, vlastníky nebo skupiny. Například symbolické odkazy nemají žádný z těchto atributů.

Zobrazení informací o typu souboru
Pro zkušenější uživatele Linuxu může být užitečné vědět, s jakým typem souboru máte co do činění. Pokud si nejste jisti typem souboru (tj. běžný soubor nebo adresář), přidejte -F
možnost s dir
příkaz udělá trik.
Spusťte následující dir
příkaz k zobrazení seznamu všech souborů a adresářů, včetně jejich typu souboru.
dir -F
Jak můžete vidět níže, pro každý uvedený soubor a adresář je na konci řádku symbol, který označuje typ souboru.
Nejběžnější symboly jsou následující:
Symbol | Ekvivalent typu souboru |
/ | Adresář |
* | Spustitelný soubor |
@ | Symbolický odkaz |
= | Zásuvka |
| | Soubor FIFO (první dovnitř, první ven) |

Přizpůsobení výstupního formátu
Ve výchozím nastavení dir
výstup příkazu je formátován ve sloupcích. Ale pokud chcete vidět výstup jinak, --format
možnost může pomoci.
1. Spusťte níže uvedený příkaz dir pro zobrazení seznamu souborů a adresářů v jednom sloupci.
dir --format=single-column
Jak můžete vidět níže, výstup zobrazuje seznam souborů a adresářů v jednom sloupci, takže seznam je čitelnější.

2. Dále spusťte stejný příkaz dir níže a vypište všechny soubory a adresáře. Tentokrát však změňte hodnotu možnosti –format na čárky.
Tento příkaz změní formát výstupu na hodnoty oddělené čárkami, které lze použít pro strojovou analýzu.
dir --format=commas
Jak můžete vidět níže, všechny soubory a adresáře jsou uvedeny a odděleny čárkami.

3. Nyní spusťte následující příkaz pro zobrazení seznamu všech souborů a adresářů v –verbose, abyste zobrazili další informace.
dir --format=verbose
Níže můžete vidět výstup volby –format=version stejně jako příkaz dir -l.

Ignorování souborů se specifickým vzorem
dir
Příkaz se často používá ve skriptech Bash, ignorování určitých typů souborů může být užitečné pro urychlení provádění skriptu. Pokud například hledáte všechny běžné soubory v adresáři, možná budete chtít ignorovat jakékoli symbolické odkazy. Máte štěstí, --ignore
Tato možnost vám umožní kouzla.
Spusťte níže uvedený dir
příkaz k vypsání všech souborů a adresářů v aktuálním adresáři, kromě jakýchkoli symbolických odkazů (@
).
dir [email protected] -F
Jak můžete vidět níže, jsou uvedeny pouze běžné soubory a adresáře a jakékoli symbolické odkazy, které se mohou v adresáři nacházet, jsou ignorovány.

Nyní spusťte následující příkaz a vypište všechny soubory a adresáře a ignorujte všechny spustitelné soubory (*.exe
).
dir --ignore=*.exe -F
Ve výstupu níže můžete potvrdit, že tento příkaz značně zužuje soubory a výpisy adresářů, protože vylučujete spustitelné soubory.

Třídění výstupu z dir
Příkaz
Přirozeně, když spustíte dir
příkaz, soubory a adresáře jsou seřazeny vzestupně v abecedním pořadí. Možná však budete chtít vypsat soubory a adresáře v určitém pořadí, například podle velikosti nebo podle data poslední změny.
V takovém případě můžete použít jiné možnosti pro dir
příkaz k řazení seznamu souborů a adresářů ve výstupu.
Spuštěním níže uvedeného příkazu zobrazíte seznam všech souborů a adresářů v aktuálním adresáři podle velikosti, přičemž největší budou uvedeny jako první.
dir -S -l

Nakonec spusťte následující dir
příkaz pro výpis souborů a adresářů seřazených podle času. Všimněte si, že nejvyšší soubor nebo adresář je ten, který byl naposledy upraven.
dir -t -l

Závěr
Základní dovedností, kterou potřebuje každý uživatel Linuxu, je schopnost vypisovat soubory a adresáře v jejich souborovém systému. A v tomto tutoriálu jste se podívali na některé z běžnějších možností pro dir
příkaz v Linuxu pro efektivní navigaci v systému souborů.
V tuto chvíli byste si měli být dostatečně jisti, že budete pracovat se systémem souborů prostřednictvím terminálu, pokud máte dir
příkaz. Proč nezkusit napsat skript, který automaticky vyhledá soubory a adresáře pro správu ve vašem systému?