Mehrere mögliche Dolmetscher in einer Sache?

Mehrere mögliche Dolmetscher in einer Sache?

Um mir einige nodejs beizubringen, installierte ich npm und dielernenyounodeModul. Leiderlernenyounodeversucht auszuführen #!/usr/bin/env nodeund nicht #!/usr/bin/env nodejs– wie wir es in Ubuntu eingerichtet haben.

Ich habe gesucht, aber ich kann anscheinend keinen Weg finden, um eineFallback-Shebang. Ich weiß, dass Benutzer immer /usr/bin/nodejsauf verlinken können /usr/bin/node, aber es wäre schön, wenn es eine elegantere Möglichkeit gäbe, ausführbare Node-Skripte zu schreiben, unabhängig davon, ob der Interpreter benannt wurde Knotenodernodejs.

Antwort1

In der ~/.profileDatei gibt es einen Codeabschnitt, der $HOME/binIhren PATH ergänzt. Sie können diese Funktion verwenden, um „node“ mit „nodejs“ zu verknüpfen:

mkdir ~/bin
ln -s /usr/bin/nodejs ~/bin/node

Möglicherweise müssen Sie sich erneut anmelden, wenn Ihr $HOME/binVerzeichnis vorher nicht existierte. Sie können die Shebang-Zeile auch überspringen und den Interpreter direkt angeben:

nodejs learnyounode.js

verwandte Informationen