Jak používat příkaz typu Linux

Zjistěte, zda se příkaz překládá na alias, soubor na disku, funkci shellu, vestavěný příkaz nebo vyhrazené slovo. Pomocí typu můžete zjistit, jak se provádějí vaše příkazy Linuxu, a lépe porozumět vašemu systému.

Do My Bidding

Když otevřeme okno terminálu a začneme zadávat příkazy našemu počítači se systémem Linux, jen zřídka se zastavíme nad tím, jaké softwarové komponenty v operačním systému reagují na naše příkazy a provádějí je za nás. Zadáme příkaz, získáme výsledek a pokračujeme v naší práci.

Znalost toho, jak jsou příkazy prováděny, nám umožňuje lépe porozumět způsobu, jakým je konstruován náš Linux nebo jiný operační systém podobný Unixu. Nahlédnutí pod kapotu z nás může udělat informovanějšího řidiče.

Pokyny, které vydáváme příkazovému řádku, jsou v jedné z následujících kategorií:

Alias: Uživatelem (nebo systémem) definovaný příkaz, který způsobí, že proběhnou další, obvykle zdlouhavé nebo složité sekvence příkazů.
Diskový soubor: Binární spustitelný soubor, jako je /usr/bin/top.
Funkce shellu: Uživatelem (nebo systémem) definovaná funkce, kterou lze použít na příkazovém řádku nebo zahrnout do skriptů.
Vestavěný příkaz: Příkaz, který provádí samotný shell, například pwd.
Rezervované slovo: Slovo, které je rezervováno skořápkou, jako je if a elif. Říká se jim také klíčová slova.

Příkaz typu nám říká, která kategorie kterýkoli z příkazů Linuxu patří. Zde je rychlý návod k pochopení výstupu příkazu.

Typ Příkaz

Pojďme si probrat několik rychlých příkladů pro každou z kategorií příkazů.

type date

Příkaz date je spustitelný soubor na disku.

type ls

Příkaz ls je alias, který obtéká základní příkaz ls tak, aby standardně používal volbu –color=auto.

type lowdown

Příkaz lowdown je uživatelsky definovaná funkce, která byla nastavena na dojíždějícím zařízení používaném k výzkumu tohoto článku. Poskytuje rychlý přehled některých systémových prostředků. Je to kombinace whoami , w , free a df .

type pwd

Příkaz pwd je vestavěný příkaz prostředí Bash.

type elif

Příkaz elif je vyhrazené slovo v prostředí Bash.

Použití více příkazů

Můžete zadat více příkazů typu k identifikaci najednou.

type date top ls

Možnost -t

Žádná z možností, které typ přijme, nemá názvy. Takže můžeme dostat naši knihu jmen a pokřtít je sami. Pokud si myslíte, že možnost -t znamená „stručné“, nebudete se mýlit. Redukuje odpovědi z typu na jednoslovné odpovědi.

type -t date
type -t pwd
type -t lowdown

Možnost -a

Nazvěme tuto možnost „vše“. Uvádí všechna umístění, ve kterých je příkaz umístěn. Všimněte si, že tato volba nebude fungovat, pokud použijete také volbu -p.

Pokud máte například alias se stejným názvem jako základní příkaz, můžete získat informace o aliasu a příkazu.

type -a ls

Možnost -f

Volba -f nutí typ, aby nehledal uživatelem nebo systémem definované funkce. Představte si tuto možnost jako „vyhledávání funkcí vypnuto“. Všimněte si, že pokud je příkaz funkcí, typ oznámí, že příkaz nelze najít.

type -f top
type -f lowdown

Možnost -P

Pokud použijete volbu -P, typ pouze vyhledá adresáře v $PATH. Tuto možnost tedy můžeme nazvat „cesta“. Všimněte si, že tato možnost používá velké písmeno „P“.

type -P date chmod adduser

Volba -p

Pokud použijete volbu -p, typ bude reagovat pouze v případě, že příkaz je soubor na pevném disku. Všimněte si, že tato možnost používá malé písmeno „p“.

type -p mount
type -p ls
type -p -a ls

typ nedává žádnou odpověď na ls, protože ls je alias a ne soubor na disku.

Pokud však zahrneme volbu -a, aby typ vyhledával všechny instance příkazu ls, vypíše základní diskový soubor, který alias ls používá.

souhrn

Bylo to hezké a jednoduché, ale přesto to osvětlovalo.

Máme tendenci považovat vše, co napíšeme v okně terminálu, za „příkaz“ a necháme to tak. Ale ve skutečnosti jsou příkazy v systému Linux implementovány různými způsoby. A typ vám umožní zjistit, který to je.