Вопрос по bash, shebang, javascript – Как сделать так, чтобы javascript поддерживал shebang (#!)?

20

Некоторые скриптовые языки (такие как Python или Bash) используют# для комментариев.

#!/usr/bin/env python
print 'hello, world'

Я могу запустить скрипт:

python script.py

Или же

./script.py

Возможно ли сделать так, чтобы JavaScript поддерживал shebang?

Ваш Ответ

1   ответ
35

Да, вы можете просто использовать#!/usr/bin/env node (или как бы ни назывался ваш интерпретатор JavaScript, он отлично работает сjs (spidermonkey) тоже).

[[email protected]:~]> cat > test.js
#!/usr/bin/env node
console.log('hi');
[[email protected]:~]> chmod +x test.js
[[email protected]:~]> ./test.js
hi

Скорее всего, оба интерпретатора проверяют, начинается ли первая строка с#! и в этом случае оно пропускается.

Да, если это линия Шебанга. В противном случае это будет ошибка синтаксиса.
Он работал с узлом, но я не мог заставить его работать с v8.
YUI Compressor выдает сообщение о том, что это (#!) Является недопустимым символом. Кроме того, моя IDE (Eclipse) также показывает это как ошибку. Что дает? Это действительно или нет?
Узел игнорирует первую строку?# это не комментарий в JavaScript. kev

Похожие вопросы