У меня есть супер простой 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
?