116 votes

en-têtes shell-script (# !/bin/sh vs # !/bin/csh)

Pourquoi tous les fichiers de script commencent-ils par

#!/bin/sh

ou avec

#!/bin/csh

C'est nécessaire ? Quel est le but de tout ça ? Et quelle est la différence entre les deux ?

119voto

kwarrick Points 1777

Ceci est connu sous le nom Shebang :

http://fr.wikipedia.org/wiki/Shebang_(Unix)

# !interpreter [optional-arg]

Un shebang n'est pertinent que lorsqu'un script a la permission d'exécution (par exemple, chmod u+x script.sh).

Lorsqu'un shell exécute le script, il utilise l'interpréteur spécifié.

Exemple :

#!/bin/bash
# file: foo.sh
echo 1

$ chmod u+x foo.sh
$ ./foo.sh
  1

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X