GNU/Linux >> Znalost Linux >  >> Linux

Pochopení různých klasifikací příkazů Shell a jejich použití v Linuxu

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:

  1. 15 příkladů příkazů „pwd“ v systému Linux
  2. 15 příkladů příkazů „cd“ v systému Linux
  3. 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.


Linux
  1. Pochopení příkazů vypnutí, vypnutí, zastavení a restartu v Linuxu

  2. Příkazy pro restart a vypnutí Linuxu

  3. Pochopení rc skriptů v Linuxu

  1. 11 Užitečné příkazy „ssh“ a „scp“ v Linuxu

  2. linuxové použití zástupných znaků v cp a mv

  3. jiný shell pro uživatele root a uživatele bez root

  1. Najděte nejběžnější procesy podle nejvyššího využití paměti a CPU v Linuxu

  2. Linux Cat Command:Použití a příklady

  3. Rozdíl mezi příkazy 'ifconfig' a ​​'ip'