Почему npm start игнорирует экранированные отступы от аргумента? - PullRequest
0 голосов
/ 03 мая 2018

У меня есть супер простой index.js файл, который выводит первый аргумент, который он получает:

// Args 0 & 1 are /usr/bin/node and path to file
console.log(process.argv[2]);

Когда я запускаю следующее:

node index.js test``backticks

вывод равен testbackticks, и, как и ожидалось, обратные метки игнорируются.
Повторный вызов с выходом на этот раз:

node index.js test\`\`backticks 

вывод test``backticks.

My package.json имеет стартовый скрипт, например:

"start": "node ./index.js"

Вызов npm start -- test``backticks приведет к тому, что они будут игнорироваться, как и при вызове node.js.
Однако, вызывая это с экранированием:

npm start -- test\`\`backticks

Также приводит к тому же выводу, который просто:

testbackticks

С учетом игнорирования обратных кавычек.

Выход из npm, начинающийся с двойных или одинарных кавычек, работал нормально, игнорируются только галочки.
Почему вызовы npm start и node приводят к разным результатам, и как получаются обратные метки при запуске npm?
Наконец, как я могу, если возможно, передать строку с обратными чертами в качестве аргумента npm start?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...