LS(1)

JMÉNO
ls, dir, vdir - vypíše obsah adresářů

POUŽITÍ
ls [-abcdfgiklmnpqrstuxABCFGLNQRSUX1] [-w sloupců] [-T pozic] [-I vzor] [--all] [--escape] [--directory] [--inode] [--kilobytes] [--numeric-uid-gid] [--no-group] [--hide-control-chars] [--reverse] [--size] [--width=sloupců] [--tabsize=pozic] [--almost-all] [--ignore-backups] [--classify] [--file-type] [--full-time] [--ignore=vzor] [--dereference] [--literal] [--quote-name] [--recursive] [--sort={none,time,size,extension}] [--format={long,verbose,commas,across,vertical,single-column}] [--time={atime,access,use,ctime,status}] [--help] [--version] [--color[={yes,no,tty}]] [--colour[={yes,no,tty}]] [jméno...]

POPIS
Tato dokumentace není dále udržována a může být nepřesná nebo neúplná. Autoritativním zdrojem je Texinfo dokumentace.

Tato manuálová stránka popisuje GNU verzi příkazu ls. Příkazy dir a vdir jsou verze příkazu ls s různými implicitními výstupními formáty. Tyto programy vypisují všechny zadané soubory nebo adresáře. Obsah adresářů je abecedně setříděn. Příkaz ls vypisuje implicitně soubory do sloupců setříděných svisle, pokud je standardní výstup na terminál; jinak se vypisuje jeden soubor na řádek. Příkaz dir vypisuje implicitně soubory do sloupců setříděných svisle. Příkaz vdir vypisuje implicitně soubory v dlouhém formátu.

  VOLBY

-a, --all
    Vypíše všechny soubory v adresářích včetně těch, jejichž jména začínají tečkou.

-b, --escape
    Netisknutelné znaky ve jménech souborů budou vypsány pomocí řídících posloupností, jaké jsou používány v jazyce C.

-c, --time=ctime, --time=status
    Obsah adresářů bude vypsán setříděně podle času poslední změny informací v i-uzlu místo podle času poslední změny obsahu souboru. Při výpisu v dlouhém formátu se místo času poslední změny souboru vypisuje čas poslední změny i-uzlu.

-d, --directory
    Vypíše informace o zadaných adresářích nikoli o jejich obsahu.

-f  Nebude vypisovat obsah adresářů setříděně; výpis bude v pořadí, v jakém jsou položky v adresářích. Totéž jako povolení -a a -U a zakázání -l, -s, a -t.

--full-time
    Data a časy budou vypsány kompletní, nikoli zkrácené, jak je obvyklé.

-g  Ignorováno; pro kompatibilitu s Unixem.

-i, --inode
    Bude vypisovat čísla i-uzlů.

-k, --kilobytes
    Velikosti souborů budou při použití volby -s, --size vypisovány v kilobytech i když je nastavena proměnná prostředí POSIXLY_CORRECT.

-l, --format=long, --format=verbose
    Kromě jména souboru se bude vypisovat jeho typ, práva, počet pevných odkazů na soubor, jméno vlastníka, skupiny, velikost v bytech a časový údaj (čas poslední změny, pokud nebyl vybrán jiný údaj). U souborů, jejichž časový údaj je starší než 6 měsíců nebo novější než -1 hodina, bude místo hodiny a minuty vypsán rok.

-m, --format=commas
    Bude vypisovat jména souborů po řádcích oddělená čárkami, po tolika, kolik se jich vejde na řádek.

-n, --numeric-uid-gid
    Bude vypisovat vlastníka a skupinu (UID a GID) číselně.

-p  Za jména souborů připojí znak indikující typ souboru.

-q, --hide-control-chars
    Bude vypisovat otazníky místo netisknutelných znaků ve jménech souborů.

-r, --reverse
    Výpis bude setříděn v obráceném pořadí.

-s, --size
    Bude vypisovat velikost souborů v kilobytech vlevo od jména souboru. Je-li nastavena proměnná prostředí POSIXLY_CORRECT, bude se velikost souborů vypisovat v 512 bytových blocích.

-t, --sort=time
    Setřídí výpis obsahu adresáře podle časového údaje a nikoli podle abecedy. Nejnovější soubory budou vypsány první.

-u, --time=atime, --time=access, --time=use
    Výpis souborů bude setříděn podle času posledního přístupu místo podle času posledním změny. Při dlouhém výpisu se bude vypisovat čas posledního přístupu místo času poslední změny.

-x, --format=across, --format=horizontal
    Vypisovat soubory do sloupců tříděných vodorovně.

-A, --almost-all
    Vypisovat všechny soubory v adresáři kromě `.' a `..'.

-B, --ignore-backups
    Nevypisovat soubory, jejichž jména končí `~' pokud nejsou zadána v příkazovém řádku.

-C, --format=vertical
    Vypisovat soubory do sloupců tříděných svisle.

-F, --classify
    Za jména souborů připojit znak indikující typ souboru. Pro proveditelné soubory znak `*', `/' pro adresáře, `@' pro symbolické linky, `|' pro pojmenované roury (FIFO), `=' pro sokety, a nic pro normální soubory.

-G, --no-group
    Ve dlouhých výpisech nebudou uvedeny informace o skupině.

-L, --dereference
    Vypisovat soubory, na které se odkazují symbolické odkazy, místo odkazů samotných.

-N, --literal
    Bude vypisovat speciální znaky ve jménech souborů (nebude je nahrazovat otazníkem).

-Q, --quote-name
    Bude vypisovat jména souborů v uvozovkách a netisknutelné znaky bude vypisovat pomocí řídících posloupností, podobně jako v jazyce C.

-R, --recursive
    Vypíše obsah všech adresářů rekurzivně (včetně podadresářů).

-S, --sort=size
    Výpis obsahu adresářů bude setříděn podle velikosti souborů (od nejdelších souborů), nikoli abecedně.

-U, --sort=none
    Výpis obsahu adresářů nebude setříděn; bude v tom pořadí, v jakém jsou položky v adresáři. Tato volba není shodná s volbou -f, protože Unixový příkaz ls -f také povoluje volbu -a a zakazuje -l, -s, a -t. Zdá se nepoužitelné a odporné spojovat tyto nesouvisející volby dohromady do jedné volby. Proto bylo pro prostý nesetříděný výpis použito jiné jméno volby.

-X, --sort=extension
    Výpis obsahu adresářů bude setříděn abecedně podle přípon (znaků za poslední tečkou). Soubory bez přípony budou první.

-1, --format=single-column
    Bude vypisovat jeden soubor na řádku.

-w, --width sloupců
    Předpokládá, že obrazovka má zadanou šířku. Implicitní hodnota se bere z ovladače terminálu, pokud je možné ji zjistit. Jinak se použije hodnota proměnné prostředí COLUMNS, pokud ani ta není nastavena, použije se 80.

-T, --tabsize pozic
    Předpokládá, že tabelační sloupce jsou široké cols pozic. Implicitní hodnota je 8.

-I, --ignore vzor
    Nebude vypisovat soubory, jejichž jména odpovídají zadanému vzoru, pokud nejsou zadána na příkazovém řádku. Stejně jako u shellu, úvodní znak `.' ve jméně souboru nevyhovuje žolíkům na začátku vzoru.

--color, --colour, --color=yes, --colour=yes
    Vypisuje jména souborů barevně podle jejich typu. Viz sekce BAREVNÝ VÝSTUP níže.

--color=tty, --colour=tty
    Totéž jako --color, ale pouze pokud je standardní výstup na terminál. Užitečné pro shell skripty a příkazové aliasy v případě, že použitý program pro výpis po obrazovkách nepodporuje přepínání barev.

--color=no, --colour=no
    Zakáže barevný výstup. Implicitní hodnota. Má význam pro přebití předešlých voleb.

--help
    Vypíše návod k použití na standardní výstup a bezchybně skončí.

--version
    Vypíše číslo verze na standardní výstup a bezchybně skončí.

  BAREVNÝ VÝSTUP
Tato verze příkazu ls bude při použití volby --color vypisovat jména souborů barevně podle jejich jména a typu. Implicitně závisí barva pouze na typu souboru a barevné kódy jsou podle normy ISO 6429 (ANSI).

Implicitní barvy je možné změnit pomocí proměnné prostředí LS_COLORS (nebo LS_COLOURS). Formát hodnoty této proměnné připomíná formát souboru termcap(5); jedná se o seznam výrazů ve tvaru "xx=string" oddělených dvojtečkami, kde "xx" je dvoupísmenné jméno proměnné. Jména proměnných a jejich implicitní hodnoty jsou následující:

    no       0       Normální text
    fi       0       Obyčejný soubor
    di       32      Adresář
    ln       36      Symbolický odkaz
    pi       31      Pojmenovaná roura (FIFO)
    so       33      Soket
    bd       44;37   Blokové zařízení
    cd       44;37   Znakové zařízení
    ex       35      Proveditelný soubor
    mi       (nic)   Chybějící soubor (implicitně fi)
    or       (nic)   Symbolický odkaz do prázdna (implicitně ln)
    lc       \e[     Zahajovací kód (left code)
    rc       m       Ukončovací kód (right code)
    ec       (nic)   Kód pro ukončení barvy (nahrazuje lc+no+rc)

Stačí uvést pouze ty proměnné, které mají mít jinou než implicitní hodnotu.

Jména souborů se mohou také vypisovat barevně podle přípon. Požadované barvy lze nastavit proměnnou prostředí LS_COLORS jako výrazy "*přípona=řetězec". Při použití ISO 6429 kódů (tmavě modrá je 34) se budou zdrojové soubory v jazyce C (tj. soubory s příponou .c) vypisovat tmavě modrou barvou, pokud LS_COLORS bude obsahovat "*.c=34".

Řídící znaky se mohou zapisovat pomocí escape posloupností začínajících znakem \ jako v jazyce C nebo pomocí posloupností začínajících znakem ^ jako v příkazu stty. Ve stylu podle jazyka C je možné navíc psát \e pro Escape, \_ pro mezeru a \? pro Delete. Znakům \, ^, : a =, které mají speciální význam, je nutné předřadit metaznak \.

Aby při použití nestandardních terminálů nebo při dalším zpracování barevného výpisu bylo možné barevné kódy snadno odstranit nebo ignorovat, jsou jména souborů vypisována ve tvaru <lc> <kód barvy> <rc> <jméno souboru> <ec>. Není-li definován kód pro <ec>, bude místo něj použita sekvence <lc> <no> <rc>. Tato posloupnost je sice méně obecná, ale většinou postačuje. Kódy <lc> a <rc> je nutné používat pouze v případě, že terminál nepodporuje barevné sekvence podle ISO 6429.

Pokud terminál používá barevné kódy podle ISO 6429, není nutné definovat kódy pro lc, rc, a ec, a je možné pro jednotlivé typy souborů definovat kódy tvořené číselnými hodnotami oddělenými středníky. Nejpoužívanější kódy jsou:

     0     implicitní barva
     1     zvýšený jas
     4     podtržený text
     5     blikající text
    30     černé písmo
    31     červené písmo
    32     zelené písmo
    33     žluté (nebo hnědé) písmo
    34     tmavě modré písmo
    35     purpurové písmo
    36     světle modré písmo
    37     bílé (nebo šedé) písmo
    40     černé pozadí
    41     červené pozadí
    42     zelené pozadí
    43     žluté (nebo hnědé) pozadí
    44     tmavě modré pozadí
    45     purpurové pozadí
    46     světle modré pozadí
    47     žluté (nebo hnědé) pozadí

Na některých systémech a zobrazovačích nemusí fungovat všechny řídící kódy.

Některé programy správně nerozpoznají implicitní kód <ec>. Pokud se vypisuje barevný text i po skončení příkazu ls, je třeba změnit kódy no a fi z 0 na číselné kódy pro standardní barvu písma a pozadí.

CHYBY
V důsledku chyby v HP-UX, se na BSD systémech při použití volby -s vypisuje pro soubory připojené pomocí NFS ze systémů HP-UX polovina správné hodnoty. Naopak, příkaz ls na HP-UX systémech vypisuje dvojnásobek správných hodnot pro soubory připojené pomocí NFS z BSD systémů.

Pokud by existovala jedna varianta angličtiny, nebylo by nutné podporovat různý pravopis některých slov.