Я написал сценарий NodeJs с использованием функций ES6 (параметры по умолчанию и деструктурирующие), поэтому я ставлю следующий притон:Невозможно включить несколько флагов гармонии nodejs
#!/bin/node --harmony_destructuring --harmony_default_parameters
Но узел говорит мне:
/bin/node: bad option: --harmony_destructuring --harmony_default_parameters
Оба эти параметра перечислены в node --v8-options | grep "in progress"
, поэтому они должны быть действительными, но, возможно, мой синтаксис неверен. Я пробовал различные syntaxs:
/bin/node: bad option: --harmony_destructuring=true --harmony_default_parameters=true
/bin/node: bad option: --harmony_destructuring true --harmony_default_parameters true
не повезло.
Хорошо, это то, что я предполагал, shebang имеет другую обработку параметров. К сожалению, даже с env он не работает: '/ usr/bin/env: node --harmony_destructuring --harmony_default_parameters: Нет такого файла или каталога', тогда как та же самая команда в моей оболочке работает – jolivier
Это означает, что ваш PATH не включает'/bin', что очень необычно. Попробуйте '#!/Usr/bin/env/bin/node --harmony_destructuring --harmony_default_parameters' –
Действительно, мой PATH не содержит'/bin' (у меня есть archlinux, двоичные файлы находятся в/usr/bin). Но ваше предложение тоже не работает, я думаю, что env не решает проблему синтаксического анализа аргументов и пытается выполнить файл 'node option1 option2', который не существует. – jolivier