Příkaz ls ve své nejzákladnější podobě zobrazuje soubory a adresáře umístěné ve vašem aktuálním adresáři:
$ ls Desktop Downloads my_script Public test_file Documents Music Pictures Templates Videos $
Vždy je pro mě obtížné strávit velikost souboru z příkazu „ls -al“. Například po ls -al mi výstup udává velikost souboru v bajtech. Sakra, pak to musím začít počítat tak, že vezmu poslední 4 číslice a pomalu počínám nahoru jako 1K, 10K, 100K, 1MB, 10MB, 100MB atd.
Například tento výstup:
-rw-r--r-- 1 walrus dba 137207094 Jul 8 23:12 config.2008032519.s
137207094 je kolik? při mé metodě počítání směrem nahoru mi to dává zhruba 137 MB. Je to správně? ŠPATNĚ. Sakra špatně. Výše uvedené jsou pouze bity. Mějte na paměti, 1 KB =1024 bitů, 1 MB =1024 KB a tak dále a tak dále.
1 bit = a 1 or 0 (b) 4 bits = 1 nybble (?) 8 bits = 1 byte (B) 1024 bytes = 1 Kilobyte (KB) 1024 Kilobytes = 1 Megabyte (MB) 1024 Megabytes = 1 Gigabyte (GB) 1024 Gigabytes = 1 Terabyte (TB)
Správný výpočet je:
137207094 / 1024 (bits) / 1024 (KB) = 130.8 MB
Ale nyní máme možnost v ls, která nám může poskytnout velikost souboru přímo ve formátu čitelném pro člověka. Zvažte například níže uvedený příklad starých a nových způsobů spuštění příkazu ls:
Stará cesta
Za starých časů jsme pro výpis souborů s jejich velikostmi používali příkaz ‚ls -al‘.
$ ls -al total 270388 drwxr-xr-x 2 walrus dba 1024 Jul 8 23:14 . drwxr-xr-x 11 walrus dba 512 Jun 17 01:49 .. -rw-r--r-- 1 walrus dba 137207094 Jul 8 23:12 config.2008032519.s -rw-r--r-- 1 walrus dba 451989 Jul 8 23:12 config.2008032519.split0.bz
nevýhody :těžko čitelná velikost souboru a zkreslený výstup.
Nový způsob
Novým způsobem můžeme vypsat soubory s velikostí čitelnou pro člověka, jak je uvedeno níže:
$ ls -alh total 269060 drwxr-xr-x 2 flexpm dba 1.0K Jul 8 23:12 . drwxr-xr-x 11 flexpm dba 512 Jun 17 01:49 .. -rw-r--r-- 1 flexpm dba 131M Jul 8 23:12 config.2008032519.s -rw-r--r-- 1 flexpm dba 441K Jul 8 23:12 config.2008032519.split0.sm.gz
výhody :
- čitelnější formát z hlediska velikosti souboru
- obsah je správně zarovnán.
nevýhody :
– na konci příkazu ls