English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Shell 教程

Shell est un programme écrit en C, qui est un pont pour les utilisateurs d'utiliser Linux. Shell est à la fois un langage de commandes et un langage de programmation.

Shell est une application qui fournit une interface permettant aux utilisateurs d'accéder aux services du noyau du système d'exploitation. Shell est à la fois un langage de commandes et un langage de programmation.

sh de Ken Thompson est le premier Shell Unix, Windows Explorer est une interface graphique Shell typique.

Shell script

Shell script (script Shell), est un programme de script écrit pour Shell.

Ce que l'industrie appelle généralement Shell fait généralement référence aux scripts Shell, mais les lecteurs doivent savoir que Shell et Shell script sont deux concepts différents.

Pour des raisons d'habitude et de simplicité, le terme "programmation Shell" utilisé dans cet article fait référence à la programmation de scripts Shell, et non à la développement du Shell lui-même.

Environnement Shell

La programmation Shell est comme la programmation JavaScript ou php, il suffit d'avoir un éditeur de texte capable d'écrire du code et un interpréteur de scripts capable d'exécuter les scripts.

Il existe de nombreuses sortes de Shell sous Linux, parmi les plus courantes figurent :

  • Bourne Shell(/usr/bin/sh ou/bin/sh)

  • Bourne Again Shell(/bin/bash)

  • C Shell(/usr/bin/csh)

  • K Shell(/usr/bin/ksh)

  • Shell pour Root(/sbin/sh)

  • ……

Ce tutoriel se concentre sur Bash, c'est-à-dire Bourne Again Shell, en raison de sa facilité d'utilisation et de son coût gratuit, Bash est largement utilisé dans les activités quotidiennes. 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/sh,它可以改为 #!/bin/bash.

#! Indiquez au système que le programme spécifié par le chemin d'accès après cela est le Shell utilisé pour interpréter ce fichier de script.

Premier script shell

Ouvrez un éditeur de texte (vous pouvez utiliser vi/Utilisez la commande vim pour créer un fichier), créez un fichier nommé test.sh avec une extension sh (sh signifie shell), l'extension n'affecte pas l'exécution du script, il suffit de suivre le nom. Si vous écrivez un script shell en php, utilisez l'extension php.

输入一些代码,第一行一般是这样:

实例

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

#! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。

echo 命令用于向窗口输出文本。

运行 Shell 脚本有两种方法:

1、作为可执行程序

将上面的代码保存为 test.sh,并 cd 到相应目录:

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

注意,一定要写成 ./test.sh,而不是 test.sh,运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的当前目录通常不在 PATH 里,所以写成 test.sh 是会找不到命令的,要用 ./test.sh 告诉系统说,就在当前目录找。

2、作为解释器参数

这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,如:

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

这种方式运行的脚本,不需要在第一行指定解释器信息,写了也没用。