Tutoriel Shell

Shell est un programme écrit en langage C, et c'est un pont permettant aux utilisateurs d'utiliser Linux. Shell est à la fois un langage de commande et un langage de programmation.

Shell désigne un programme applicatif qui fournit une interface par laquelle les utilisateurs accèdent aux services du noyau du système d'exploitation.

Le sh de Ken Thompson a été le premier shell Unix, et Windows Explorer est un shell à interface graphique typique.

Outils Shell en ligne


Scripts Shell

Un script shell est un programme de script écrit pour le shell.

Lorsque le milieu dit « shell », il fait généralement référence aux scripts shell, mais les lecteurs doivent savoir que shell et script shell sont deux concepts différents.

Par habitude et par souci de concision, « programmation shell » dans cet article désigne la programmation de scripts shell, et non le développement du shell lui-même.


Environnement Shell

La programmation Shell est comme la programmation JavaScript et PHP : vous avez seulement besoin d'un éditeur de texte pour écrire du code et d'un interpréteur de scripts pour l'interpréter et l'exécuter.

Il existe de nombreux types de Shell sous Linux ; les plus courants incluent :

  • Bourne Shell (/usr/bin/sh ou /bin/sh)
  • Bourne Again Shell(/bin/bash)
  • C Shell(/usr/bin/csh)
  • K Shell(/usr/bin/ksh)
  • Shell for Root(/sbin/sh)
  • ……

Ce tutoriel se concentre sur Bash, c'est-à-dire Bourne Again Shell. Parce qu'il est facile à utiliser et gratuit, Bash est largement utilisé dans le travail quotidien. En même temps, Bash est également le Shell par défaut de la plupart des systèmes Linux.

En général, les gens ne distinguent pas entre Bourne Shell et Bourne Again Shell, donc, comme#!/bin/shil peut aussi être changé en#!/bin/bash。

#!indique au système que le programme spécifié par le chemin qui suit est le programme Shell qui interprète ce fichier de script.


Premier script Shell

Ouvrez un éditeur de texte (vous pouvez utiliser la commande vi/vim pour créer un fichier), créez un nouveau fichier test.sh avec l'extension sh (sh signifie shell). L'extension n'affecte pas l'exécution du script ; elle sert uniquement de commodité de nommage. Si vous écrivez des scripts shell en PHP, utilisez simplement l'extension php.

Saisissez du code. La première ligne est généralement comme ceci :

Exemple

#!/bin/bash
echo "Hello World !"

#!est un marqueur conventionnel qui indique au système quel interpréteur ce script doit exécuter, c'est-à-dire quel Shell utiliser.

La commande echo est utilisée pour afficher du texte dans la fenêtre.

Il existe deux façons d'exécuter un script Shell :

1. En tant que programme exécutable

Enregistrez le code ci-dessus sous test.sh, et placez-vous avec cd dans le répertoire correspondant :

chmod +x ./test.sh  #使脚本具有执行权限
./test.sh  #执行脚本

Notez que vous devez l'écrire comme./test.shplutôt quetest.sh. Il en va de même pour l'exécution d'autres programmes binaires. Si vous écrivez directement test.sh, le système Linux cherchera dans PATH un fichier nommé test.sh, et seuls /bin, /sbin, /usr/bin, /usr/sbin, etc. sont dans PATH. Votre répertoire courant n'est généralement pas dans PATH, donc écrire test.sh entraînera « command not found » ; vous devez utiliser ./test.sh pour indiquer au système de chercher dans le répertoire courant.

2. En tant qu'argument d'interpréteur

Cette façon de lancer consiste à exécuter directement l'interpréteur, avec comme argument le nom du fichier de script shell, par exemple :

/bin/sh test.sh
/bin/php test.php

Les scripts exécutés de cette manière n'ont pas besoin de spécifier les informations sur l'interpréteur sur la première ligne ; c'est inutile même si vous l'écrivez.

Autres extensions