Jak používat Pinky Command na Linuxu

Photo of author

By etechblogcz

Zajímá vás, kdo je aktuálně přihlášený k vašemu linuxovému systému? Nehledejte dál! Nemusíte ani hnout prstem, stačí použít malíček – tedy příkaz `pinky`.

Mnoho administrátorů systémů by se pro zjištění informací o přihlášených uživatelích na Linuxu či Unixu pravděpodobně obrátilo na příkaz `finger`. To sice funguje, ale na mnoha systémech tento příkaz nemusí být k dispozici, protože není standardně nainstalován.

Místo instalace `finger` (za předpokladu, že k tomu máte oprávnění) můžete použít `pinky`, který je odlehčenou a moderní alternativou příkazu `finger`. Na většině testovaných distribucí Linuxu, včetně Ubuntu, Manjaro a Fedory, byl `pinky` již předinstalován.

Stručný přehled

Stejně jako u jiných linuxových příkazů, i `pinky` má několik voleb příkazového řádku, ale překvapivě se všechny týkají úprav výstupu. Můžete tak omezit zobrazené informace jen na to, co vás zajímá.

Pokud je `pinky` odlehčený příkaz, jeho možnosti vám umožňují udělat z něj doslova „pírko“ – zobrazí jen to, co potřebujete.

Jak používat `pinky`

Nejjednodušší způsob použití příkazu `pinky` je napsat jeho název do terminálu a stisknout Enter:

pinky

Výchozí výstup je ve formátu „krátkého přehledu“.

Krátký výpis obsahuje tyto sloupce:

Login: Uživatelské jméno přihlášeného uživatele.
Jméno: Celé jméno uživatele, pokud je dostupné.
TTY: Typ terminálu, ke kterému je uživatel připojen. Obvykle se jedná o `pts` (pseudo-terminál), `0` označuje fyzickou klávesnici a monitor připojený přímo k počítači.
Idle: Doba nečinnosti uživatele. Zobrazuje `?????` pokud uživatel pracuje pod X Window Display Managerem, který tuto informaci neposkytuje.
Kdy: Datum a čas přihlášení.
Kde: Místo, odkud se uživatel přihlásil. Často se jedná o IP adresu vzdáleného počítače. Záznam `:0` znamená fyzickou klávesnici a monitor připojené k danému počítači.

Příkaz `pinky` nemůže vždy vyplnit všechny sloupce. Pokud některé informace nejsou dostupné, příslušný sloupec zůstane prázdný. Například, pokud administrátor systému nezadal celé jméno uživatele „dave“, `pinky` nemůže zobrazit celé jméno ve sloupci „Jméno“ a zobrazí místo toho „dave“.

Výpis informací o jednom uživateli

Standardně `pinky` vypíše informace o všech přihlášených uživatelích. Pro zobrazení informací o jednom konkrétním uživateli stačí zadat jeho uživatelské jméno jako argument příkazu.

pinky mary

V tomto případě `pinky` zobrazí pouze informace o uživateli „mary“.

Odstranění záhlaví sloupců

Pro odstranění záhlaví sloupců z výpisu použijte volbu `-f`:

pinky -f

Záhlaví sloupců se z výstupu odstraní.

Vynechání sloupce „Jméno“

Volba `-w` způsobí, že `pinky` vynechá sloupec „Jméno“:

pinky -w alec

Výsledný výpis neobsahuje sloupec „Jméno“.

Vynechání sloupců „Jméno“ a „Kde“

Volba `-i` vynechá sloupce „Jméno“ a „Kde“:

pinky -i robert

Výpis od `pinky` již neobsahuje sloupce „Jméno“ a „Kde“.

Vynechání sloupců „Jméno“, „Nečinný“ a „Kde“

Pro další omezení zobrazených informací použijte volbu `-q` pro vynechání sloupců „Jméno“, „Nečinný“ a „Kde“:

pinky -q john

`pinky` odstraní z výstupu sloupce „Jméno“, „Nečinný“ a „Kde“. Zbydou nám tedy tři sloupce – pokud bychom odebrali další, výpis by byl téměř nepoužitelný.

Výpis v dlouhém formátu

Volba `-l` (dlouhý formát) rozšíří informace poskytované o jednotlivých uživatelích. Pro použití této volby je nutné zadat uživatelské jméno jako argument příkazu.

(Toto je jedna ze dvou voleb příkazového řádku, která má pojmenování. Druhou je volba `-s` (krátká zpráva). Protože výchozí výstup je krátká zpráva, volba `-s` vlastně nic nedělá.)

pinky -l mary

Dlouhý formát výpisu obsahuje několik doplňujících informací.

Informace v dlouhém formátu jsou:

Přihlašovací jméno: Uživatelské jméno přihlášeného uživatele.
V reálném životě: Celé jméno uživatele, pokud je k dispozici.
Adresář: Domovský adresář uživatele.
Shell: Shell, který uživatel používá.
Projekt: Obsah souboru `~/.project` uživatele, pokud existuje.
Plán: Obsah souboru `~/.plan` uživatele, pokud existuje.

Původní myšlenkou souboru `~/.project` bylo uložení stručného popisu projektu nebo úkolu, na kterém daný uživatel pracuje. Podobně, soubor `~/.plan` měl sloužit jako krátký popis aktuální pracovní položky pro daný projekt. To umožňovalo manažerům a zainteresovaným stranám zjistit, jakou prací se daný člověk zabývá a do jakého projektu tato práce spadá. Nicméně, toto schéma se dnes používá velmi zřídka a je pravděpodobné, že tyto soubory budou pro většinu uživatelů prázdné.

Podívejme se na výpis uživatele Alec:

pinky -l alec

Alec nemá ani soubor `~/.plan` ani `~./project`.

Vynechání řádku adresáře a shellu

Pro vynechání řádku s informacemi o domovském adresáři a shellu v dlouhém výpisu použijte volbu `-b`:

pinky -l -b robert

Řádek s informací o domovském adresáři a shellu je z výstupu odstraněn.

Vynechání souboru projektu

Pro vynechání řádku s obsahem souboru `~/.project` v dlouhém výpisu použijte volbu `-h`:

pinky -l -h mary

Obsah souboru `~/.project` se nezobrazí.

Vynechání souboru plánu

Pro vynechání řádku s obsahem souboru `~/.plan` v dlouhém výpisu použijte volbu `-p`:

pinky -l -p mary

Obsah souboru `~/.plan` se nezobrazí.

Proč tolik voleb pro odstranění informací?

Proč má příkaz, který vypisuje informace, tolik možností, jak odstranit jejich části? Důvodem je, že vám umožňuje zaměřit se pouze na informace, které vás skutečně zajímají. Můžete si tak vybrat, které informace jsou pro vás důležité.