Lorsqu'il s'agit d'obtenir un contrôle absolu sur votre système Linux, rien ne se rapproche de l'interface de ligne de commande (CLI). Pour devenir un utilisateur expérimenté de Linux, il faut comprendre les différents types de commandes shell et les manières appropriées de les utiliser depuis le terminal.
Sous Linux, il existe plusieurs types de commandes, et pour un nouvel utilisateur Linux, connaître la signification des différentes commandes permet une utilisation efficace et précise. Par conséquent, dans cet article, nous allons parcourir les différentes classifications des commandes shell sous Linux.
Lecture suggérée : 5 trucs et astuces intéressants en ligne de commande sous Linux – Partie 1
Une chose importante à noter est que l'interface de ligne de commande est différente du shell, elle ne vous fournit qu'un moyen d'accéder au shell. Le shell, également programmable, permet alors de communiquer avec le noyau à l'aide de commandes.
Différentes classifications des commandes Linux relèvent des classifications suivantes :
1. Exécutables du programme (commandes du système de fichiers)
Lorsque vous exécutez une commande, Linux recherche dans les répertoires stockés dans la variable d'environnement $PATH de gauche à droite l'exécutable de cette commande spécifique.
Vous pouvez afficher les répertoires dans le $PATH
comme suit :
$ echo $PATH /home/aaronkilik/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
Dans l'ordre ci-dessus, le répertoire /home/aaronkilik/bin
sera recherché en premier suivi de /usr/local/sbin
et ainsi de suite, l'ordre est significatif dans le processus de recherche.
Exemples de commandes de système de fichiers dans /usr/bin
répertoire :
$ ll /bin/
Exemple de sortie
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. Alias Linux
Ce sont des commandes définies par l'utilisateur, elles sont créées à l'aide de l'alias commande intégrée shell et contiennent d'autres commandes shell avec quelques options et arguments. L'idée est d'utiliser essentiellement des noms nouveaux et courts pour les commandes longues.
Lecture suggérée : 10 utilisations étonnantes et mystérieuses du symbole ou de l'opérateur (!) dans les commandes Linux
La syntaxe pour créer un alias est le suivant :
$ alias newcommand='command -options'
Pour lister tous les alias sur votre système, lancez la commande ci-dessous :
$ 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'
Pour créer un nouvel alias sous Linux, passez en revue les exemples ci-dessous.
$ alias update='sudo apt update' $ alias upgrade='sudo apt dist-upgrade' $ alias -p | grep 'up'
Cependant, les alias que nous avons créés ci-dessus ne fonctionnent que temporairement, lorsque le système est redémarré, ils ne fonctionneront pas après le prochain démarrage. Vous pouvez définir des alias permanents dans votre .bashrc
fichier comme indiqué ci-dessous.
Après les avoir ajoutés, exécutez la commande ci-dessous pour les activer.
$ source ~/.bashrc
3. Mots réservés du shell Linux
En programmation shell, des mots tels que if , puis , fi , pour , pendant , cas , esac , autrement , jusqu'à et beaucoup d'autres sont des mots réservés au shell. Comme la description l'indique, ils ont une signification particulière pour le shell.
Vous pouvez lister tous les mots clés du shell Linux en utilisant type
commande comme indiqué :
$ 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
Lecture suggérée : 10 opérateurs de chaînage Linux utiles avec des exemples pratiques
4. Fonctions du shell Linux
Une fonction shell est un groupe de commandes qui sont exécutées collectivement dans le shell actuel. Les fonctions aident à exécuter une tâche spécifique dans un script shell. La forme conventionnelle d'écriture des fonctions shell dans un script est :
function_name() { command1 command2 ……. }
Alternativement,
function function_name { command1 command2 ……. }
Voyons comment écrire des fonctions shell dans un script nommé 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
Au lieu d'exécuter les deux commandes :sudo apt update
et sudo apt dist-upgrade
depuis la ligne de commande, nous avons écrit une fonction shell simple pour exécuter les deux commandes en une seule commande, upgrade_system
dans un script.
Lecture suggérée : 5 scripts shell pour les débutants Linux pour apprendre la programmation shell
Enregistrez le fichier et ensuite, rendez le script exécutable. Enfin, exécutez-le comme ci-dessous :
$ chmod +x shell_functions.sh $ ./shell_functions.sh
5. Commandes intégrées du shell Linux
Ce sont des commandes Linux intégrées au shell, vous ne pouvez donc pas les trouver dans le système de fichiers. Ils incluent pwd , cd , bg , alias , historique , tapez , source , lire , quitter et bien d'autres.
Vous pouvez lister ou vérifier les commandes intégrées de Linux en utilisant type
commande comme indiqué :
$ 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
En savoir plus sur l'utilisation de certaines commandes intégrées à Linux :
- 15 exemples de commande "pwd" sous Linux
- 15 exemples de commande "cd" sous Linux
- Découvrez la puissance de la commande "history" de Linux
Conclusion
En tant qu'utilisateur Linux, il est toujours important de connaître le type de commande que vous exécutez. Je pense qu'avec l'explication précise et simple à comprendre ci-dessus, y compris quelques illustrations pertinentes, vous avez probablement une bonne compréhension des différentes catégories de commandes Linux.
Vous pouvez également entrer en contact avec la section des commentaires ci-dessous pour toute question ou idée supplémentaire que vous souhaitez nous proposer.