Pokud jde o získání absolutní kontroly nad vaším systémem Linux, pak se nic nepřibližuje rozhraní příkazového řádku (CLI). Aby se člověk stal zkušeným uživatelem Linuxu, musí rozumět různým typům příkazů shellu a vhodným způsobům jejich použití z terminálu.
V Linuxu existuje několik typů příkazů a pro nového uživatele Linuxu znalost významu různých příkazů umožňuje efektivní a přesné použití. Proto si v tomto článku projdeme různé klasifikace příkazů shellu v Linuxu.
Doporučené čtení: 5 zajímavých tipů a triků pro příkazový řádek v Linuxu – část 1
Jedna důležitá věc, kterou je třeba poznamenat, je, že rozhraní příkazového řádku se liší od shellu, poskytuje pouze prostředek pro přístup k shellu. Shell, který je také programovatelný, pak umožňuje komunikovat s jádrem pomocí příkazů.
Různé klasifikace příkazů Linuxu spadají pod následující klasifikace:
1. Spustitelné soubory programu (příkazy systému souborů)
Když spustíte příkaz, Linux prohledá adresáře uložené v proměnné prostředí $PATH zleva doprava a vyhledá spustitelný soubor tohoto konkrétního příkazu.
Adresáře můžete zobrazit v $PATH
takto:
$ echo $PATH /home/aaronkilik/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
Ve výše uvedeném pořadí, adresář /home/aaronkilik/bin
bude nejprve prohledán a poté /usr/local/sbin
a tak dále, pořadí je důležité v procesu vyhledávání.
Příklady příkazů systému souborů v /usr/bin
adresář:
$ ll /bin/
Ukázkový výstup
total 16284 drwxr-xr-x 2 root root 4096 Jul 31 16:30 ./ drwxr-xr-x 23 root root 4096 Jul 31 16:29 ../ -rwxr-xr-x 1 root root 6456 Apr 14 18:53 archdetect* -rwxr-xr-x 1 root root 1037440 May 17 16:15 bash* -rwxr-xr-x 1 root root 520992 Jan 20 2016 btrfs* -rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-calc-size* lrwxrwxrwx 1 root root 5 Jul 31 16:19 btrfsck -> btrfs* -rwxr-xr-x 1 root root 278376 Jan 20 2016 btrfs-convert* -rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-debug-tree* -rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-find-root* -rwxr-xr-x 1 root root 270136 Jan 20 2016 btrfs-image* -rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-map-logical* -rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-select-super* -rwxr-xr-x 1 root root 253816 Jan 20 2016 btrfs-show-super* -rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfstune* -rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-zero-log* -rwxr-xr-x 1 root root 31288 May 20 2015 bunzip2* -rwxr-xr-x 1 root root 1964536 Aug 19 2015 busybox* -rwxr-xr-x 1 root root 31288 May 20 2015 bzcat* lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzcmp -> bzdiff* -rwxr-xr-x 1 root root 2140 May 20 2015 bzdiff* lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzegrep -> bzgrep* -rwxr-xr-x 1 root root 4877 May 20 2015 bzexe* lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzfgrep -> bzgrep* -rwxr-xr-x 1 root root 3642 May 20 2015 bzgrep*
2. Linuxové aliasy
Jedná se o uživatelsky definované příkazy, jsou vytvářeny pomocí aliasu vestavěný příkaz shellu a obsahují další příkazy shellu s některými možnostmi a argumenty. Cílem je v zásadě používat nové a krátké názvy pro dlouhé příkazy.
Doporučené čtení: 10 úžasných a záhadných použití (!) symbolu nebo operátoru v příkazech Linux
Syntaxe pro vytvoření aliasu je následující:
$ alias newcommand='command -options'
Chcete-li zobrazit všechny aliasy ve vašem systému zadejte níže uvedený příkaz:
$ alias -p alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l='ls -CF' alias la='ls -A' alias ll='ls -alF' alias ls='ls --color=auto'
Chcete-li vytvořit nový alias v Linuxu, projděte si níže uvedené příklady.
$ alias update='sudo apt update' $ alias upgrade='sudo apt dist-upgrade' $ alias -p | grep 'up'
Aliasy, které jsme vytvořili výše, však fungují pouze dočasně, po restartu systému nebudou fungovat po dalším spuštění. V .bashrc
můžete nastavit trvalé aliasy soubor, jak je uvedeno níže.
Po jejich přidání spusťte níže uvedený příkaz k aktivaci.
$ source ~/.bashrc
3. Vyhrazená slova Linux Shell
V programování shellu slova jako if , pak , fi , pro , zatímco , případ , esac , jinak , do a mnoho dalších jsou vyhrazená slova. Jak vyplývá z popisu, mají speciální význam pro shell.
Všechna klíčová slova prostředí Linux můžete vypsat pomocí type
příkaz, jak je znázorněno:
$ type if then fi for while case esac else until if is a shell keyword then is a shell keyword fi is a shell keyword for is a shell keyword while is a shell keyword case is a shell keyword esac is a shell keyword else is a shell keyword until is a shell keyword
Doporučené čtení: 10 užitečných linuxových řetězových operátorů s praktickými příklady
4. Funkce Linux Shell
Funkce shellu je skupina příkazů, které jsou hromadně prováděny v rámci aktuálního shellu. Funkce pomáhají provádět konkrétní úkol ve skriptu shellu. Konvenční forma zápisu funkcí shellu ve skriptu je:
function_name() { command1 command2 ……. }
Případně
function function_name { command1 command2 ……. }
Podívejme se, jak psát funkce shellu ve skriptu s názvem shell_functions.sh
.
#!/bin/bash #write a shell function to update and upgrade installed packages upgrade_system(){ sudo apt update; sudo apt dist-upgrade; } #execute function upgrade_system
Místo provádění dvou příkazů:sudo apt update
a sudo apt dist-upgrade
z příkazového řádku jsme napsali jednoduchou shellovou funkci, která provede tyto dva příkazy jako jeden příkaz, upgrade_system
ve skriptu.
Doporučené čtení: 5 skriptů Shell pro nováčky v Linuxu, aby se naučili programování Shell
Uložte soubor a poté vytvořte spustitelný skript. Nakonec jej spusťte, jak je uvedeno níže:
$ chmod +x shell_functions.sh $ ./shell_functions.sh
5. Vestavěné příkazy Linux Shell
Toto jsou příkazy Linuxu, které jsou zabudovány do shellu, takže je nemůžete najít v systému souborů. Patří mezi ně pwd , cd , bg , alias , historie , zadejte , zdroj , číst , ukončit a mnoho dalších.
Pomocí type
můžete vypsat nebo zkontrolovat vestavěné příkazy Linuxu příkaz, jak je znázorněno:
$ type pwd pwd is a shell builtin $ type cd cd is a shell builtin $ type bg bg is a shell builtin $ type alias alias is a shell builtin $ type history history is a shell builtin
Další informace o použití některých vestavěných příkazů Linuxu:
- 15 příkladů příkazů „pwd“ v systému Linux
- 15 příkladů příkazů „cd“ v systému Linux
- Naučte se sílu příkazu „historie“ Linuxu
Závěr
Jako uživatel Linuxu je vždy důležité znát typ příkazu, který spouštíte. Věřím, že s přesným a snadno srozumitelným vysvětlením výše včetně několika relevantních ilustrací pravděpodobně dobře rozumíte různým kategoriím příkazů Linuxu.
Můžete se také přihlásit do sekce komentářů níže a získat jakékoli dotazy nebo doplňující nápady, které byste nám chtěli nabídnout.