du (Unix)

du
ukázkový snímek terminálu po spuštění du
ukázkový snímek terminálu po spuštění du
Typ softwarustandardní UNIXová utilita či příkaz
Některá data mohou pocházet z datové položky.

du (zkratka z anglického disk usage, využití disku) je standardní UN*Xový program určený k zjištění odhadu množství místa zabraného zadanými soubory nebo adresáři.

Historie

Příkaz du se poprvé objevil v AT&T UNIXu verze 1.

Specifikace

Podle Single UNIX Specification (SUS) je úkolem programu du zobrazit objem zabraného místa každého souboru a adresáře z aktuálního adresáře. U linku se má zobrazit velikost linku, nikoliv velikost odkazovaného souboru, zatímco u adresáře se má zobrazit místo zabrané adresářem i jeho obsahem.

Vzhledem k tomu, že du počítá místo zabrané existujícími soubory, mohou se výsledky lišit od údajů získaných jinými příkazy, například od údajů získaných programem df, který počítá volné bloky systému souborů (k uvolnění bloku totiž nemusí dojít hned v okamžiku, kdy je soubor smazán).

Použití

Argumenty du určují cesty, kde má du pracovat; pokud je du puštěno bez parametrů, použije se aktuální adresář. Podle SUSdu pracovat s následujícími přepínači:

-a : vypsat využití disku i rekurzivně pro všechny soubory (ne adresáře) v podadresářích.
-H : je-li zadán symbolický odkaz (symlink), pak ho následuje
-k : ukazuje velikosti jako násobky 1024 bajtů
-L : následuje symbolické odkazy i rekurzivně (na rozdíl od -H)
-s : vypíše pouze celkový součet zabraného místa, nikoliv rozpis na jednotlivé položky
-x : počítá zabrané místo pouze pro soubory ze stejného zařízení, kam ukazuje cesta

mezi další implementované přepínače patří například

-h : vypisovat velikosti v lidsky dobře čitelném formátu vhodným zaokrouhlením a přidáním vhodné přípony (‚G‘ – gibibajt, ‚M‘ – mebibajt, ‚K‘ – kibibajt).

implementované v GNU verzi du.

GNU verze du naopak v současných verzích neodpovídá SUS, neboť používá přepínač -H pro jiný účel.

Příklady

Souhrnné velikosti obsahu adresářů v kibibajtech:

$ du -sk *
2800344 directoryOne
4270554 directoryTwo

a v programem vybraných jednotkách:

$ du -skh *
2.8M directoryOne
4.2M directoryTwo

využití disku všemi podadresáři a v nich obsaženými soubory, včetně skrytých souborů a aktuálního adresáře, následně srovnáno podle velikosti:

$ du -sk .[A-z]* * | sort -n

Podobné programy

  • ncdu – program svým názvem odkazující k du a používající k zobrazení knihovnu ncurses
  • Filelight – program znázorňující využití místa na disku graficky

Externí odkazy

Média použitá na této stránce

Du unix output.png
Autor: RedAndr, Licence: CC BY-SA 3.0
Example output of the du UNIX command