GNU/Linux >> Znalost Linux >  >> Linux

Linux du Command Tutorial pro začátečníky (10 příkladů)

Někdy při práci na příkazovém řádku Linuxu možná budete chtít rychle zjistit využití disku pro sadu souborů nebo pro celý adresář. Existuje specifický nástroj příkazového řádku, který vám to umožní, nazvaný du . V tomto tutoriálu probereme základy tohoto nástroje a také funkce, které poskytuje, pomocí snadno srozumitelných příkladů.

Ale předtím stojí za to sdílet, že všechny příklady a pokyny zde uvedené byly testovány na Ubuntu 16.04 LTS.

Příkaz Linux du

Zde je syntaxe příkazu du:

du [OPTION]... [FILE]...

Manuálová stránka nástroje to popisuje následovně:

du - estimate file space usage

Summarize disk usage of the set of FILEs, recursively for directories.

Následující příklady typu Q&A by vám měly poskytnout lepší představu o tom, jak du funguje.

O1. Jak zjistit využití disku pro jeden nebo více souborů pomocí du?

Mluvíme zde tedy o základním použití nástroje a je velmi snadné. Jediné, co musíte udělat, je předat odpovídající názvy souborů jako vstup do příkazu.

du [file1] [file2] ...

Následuje příklad:

Jak tedy můžete vidět na výstupu, číslo zobrazené v prvním sloupci představuje využití disku odpovídajícího souboru.

Můžete to také udělat pro adresář:

V případě adresáře výstup ukazuje využití disku pro podadresáře i nadřazený adresář jako celek.

O2. Jak docílit toho, aby zobrazoval informace o používání ve formě čitelné pro člověka?

Jedním z problémů, když spustíte du ve výchozím režimu, je to, že údaj o využití vytvořený ve výstupu jasně nedává najevo, co představuje. Například výstup na snímcích obrazovky v předchozí části neříká, co jsou '4' a '8' - jsou to bajty, kilobajty nebo co?

Aby byl výstup lepší, můžete použít -h možnost příkazového řádku:

du -h [file1] [file2] ...

Níže je uveden příklad:

Nyní je tedy z výstupu jasné, že využití disku je v kilobajtech.

Q3. Jak zajistit, aby se du display počítalo pro všechny soubory v adresáři?

Ve výchozím nastavení, kdykoli předáte název adresáře jako vstup do du, nástroj zobrazí pouze informace související s použitím pro vstupní adresář a podadresáře (pokud existují).

Pokud je však požadavkem samostatně zobrazit informace o využití disku také pro všechny soubory, můžete to provést pomocí -a možnost příkazového řádku. Následuje příklad této možnosti:

4. Jak dosáhnout toho, aby du produkovalo celkové využití?

To lze provést pomocí -c možnost příkazového řádku. Například:

Jak je zřejmé z výše uvedeného snímku obrazovky, do spodní části výstupu je přidán nový řádek zobrazující celkový součet využití disku.

O5. Jak docílit toho, aby du zobrazoval informace o inodu namísto použití bloku?

K tomu musíte použít --inode volba. Následuje snímek obrazovky pro tuto možnost v akci:

O6. Jak přimět du přijímat vstup ze souboru nebo STDIN?

To lze provést pomocí --files0-from možnost příkazového řádku. Předpokládejme, že názvy vstupních souborů jsou zapsány v souboru s názvem inp_list , pak můžete použít příkaz du následujícím způsobem:

du --files0-from=inp_list

Zde je například možnost v akci:

Mějte prosím na paměti, že jména zadaná ve vstupním souboru (inp_list v našem případě výše) by měla být ukončena NUL. Například náš inp_list soubor obsahoval následující obsah:

Udělali jsme to přes Vim. Chcete-li vědět, jak to můžete provést prostřednictvím Vim, přejděte sem.

Dále můžete také přimět vstup od STDIN. K tomu je třeba předat pomlčku (-) jako hodnotu do --files0-from volba. V tomto případě musíte po zadání každého názvu souboru na STDIN stisknout dvakrát Ctrl+d.

O7. Jak provést vyloučení velikosti podadresářů z velikosti nadřazeného adresáře?

Ke konci prvního čtvrtletí výše jsme diskutovali o tom, jak můžete použít du k zobrazení využití disku pro adresář. Výstup odhalil, že zatímco velikost podadresářů je zobrazena samostatně, záznam pro nadřazený adresář (ten předaný na vstupu) zobrazuje kombinovanou velikost všeho.

V případě, že chcete v poslední položce zobrazit velikost nadřazeného – velikost podadresářů, můžete použít -S možnost příkazového řádku.

O8. Jak zajistit, aby se ve výstupu zobrazil čas poslední úpravy?

K tomu použijte --time možnost příkazového řádku. Zde je příklad:

O9. Jak přimět du vyloučit konkrétní typ souborů?

Předpokládejme, že váš adresář obsahuje několik typů souborů a chcete, aby příkaz du nezahrnoval jeden nebo více z nich při výpočtu využití disku pro daný adresář. Můžete to udělat pomocí --exclude možnost, která vyžaduje vzor jako vstup.

du --exclude=PATTERN [Dir-name]

Například následující snímek obrazovky ukazuje výše uvedený příkaz v akci pro soubory .png.

O10. Jak definovat hloubku adresáře pro du?

Pokud chcete, můžete také omezit příkaz du na konkrétní hloubku adresáře. Tímto způsobem nástroj vytiskne informace o použití pouze pro adresáře, se kterými se setká, na úroveň zadanou uživatelem. Funkce je přístupná pomocí --max-depth možnost.

Pokud tedy chcete omezit du na adresář nejvyšší úrovně, předejte této možnosti '0' jako hodnotu.

du --max-depth=0 [dir-name]

Následuje několik příkladů této možnosti:

Závěr

du je praktický nástroj příkazového řádku, který vám může pomoci v mnoha situacích. Navíc to není složité na pochopení a použití. Probrali jsme zde některé základní možnosti příkazového řádku. Pro více podrobností přejděte na manuálovou stránku nástroje.


Linux
  1. Linux cd command tutorial pro začátečníky (8 příkladů)

  2. Linux Date Command Tutorial pro začátečníky (8 příkladů)

  3. Linux hostname Command Tutorial pro začátečníky (5 příkladů)

  1. Výuka příkazů Linux pro začátečníky (5 příkladů)

  2. Linux df Command Tutorial pro začátečníky (8 příkladů)

  3. Výukový program Linux echo Command pro začátečníky (5 příkladů)

  1. Linux env Command Tutorial pro začátečníky (5 příkladů)

  2. Návod k příkazu velikosti Linuxu pro začátečníky (6 příkladů)

  3. Linux kill Command Tutorial pro začátečníky (5 příkladů)