web-dev-qa-db-fra.com

Que signifie "#! / Bin / env" (en haut d'un script node.js)?

J'ai trouvé des projets node.js serval qui ont ceci en haut de leur app.js (comme dans ce programme openshift ):

#!/bin/env node

Qu'est-ce que ça veut dire? Comment cela marche-t-il? Où est-ce utile?

55
hh54188

La ligne complète de votre exemple est:

#!/bin/env node

Cela signifie simplement que le script doit être exécuté avec le premier exécutable nommé 'node' qui se trouve dans votre PATH actuel.

Le Shebang (#!) Au début signifie exécuter le script avec ce qui suit./bin/env est un programme Unix standard qui examine votre environnement actuel. Tout argument qui n'est pas au format 'nom = valeur' ​​est une commande à exécuter. Consultez votre page de manuel env pour plus de détails.

66
sockmonk

env est une commande Shell utilisée pour spécifier un interpréteur.

8
Chris Ledet