unwrap-npm-cmd
v1.1.1
Published
Unwrap npm's node.js bin CMD batch for js files on Windows
Downloads
44,572
Maintainers
Readme
unwrap-npm-cmd
Unwrap npm's node.js bin CMD batch for js files on Windows.
const unwrapNpmCmd = require("unwrap-npm-cmd");
console.log(unwrapNpmCmd("npm test"));
console.log(unwrapNpmCmd("npx mocha", { relative: true }));
console.log(unwrapNpmCmd("mocha test", { jsOnly: true }));
console.log(unwrapNpmCmd(`find "name" package.json`));
console.log(unwrapNpmCmd("hello world", { path: __dirname }));
Output:
"C:\Users\userid\nvm\nodejs\bin\node.exe" "C:\Users\userid\nvm\nodejs\bin\node_modules\npm\bin\npm-cli.js" test
"C:\Users\userid\nvm\nodejs\bin\node.exe" "..\nvm\nodejs\bin\node_modules\npm\bin\npx-cli.js" mocha
"C:\Users\userid\unwrap-npm-cmd\node_modules\mocha\bin\mocha" test
"C:\WINDOWS\system32\find.EXE" "name" package.json
"C:\Users\userid\unwrap-npm-cmd\test\fixtures\hello.CMD" world
Usage
child.spawnSync(unwrapNpmCmd("mocha test", { relative: true }));
Would effectivly be doing:
child.spawnSync(
`"C:\\Users\\userid\\nvm\\nodejs\\bin\\node.exe" ".\\node_modules\\mocha\\bin\\_mocha" test`
);
API
unwrapNpmCmd(cmd, options);
options
:
| name | description |
| ---------- | ---------------------------------------------------------- |
| path
| Use instead of the PATH
environment variable. |
| jsOnly
| Return only the JS file as command without node exe. |
| relative
| Convert JS file to relative path from CWD. |
| cwd
| Use instead of process.cwd()
to find relative path from. |
License
Licensed under the Apache License, Version 2.0