问题
How can I execute PowerShell ps1 scripts from package.json
"scripts"?
I know how to set up a basic script in package.json "scripts". For example with the following configuration, I can exec npm run test
which will output "this is only a test" to the console:
"scripts": {
"test": "echo \"this is only a test\""
}
However, I have a more advanced scenario where I'd like to execute a PowerShell script. Something like this:
"scripts": {
"buildAngular": "buildAngular.ps1"
}
Can I exec a ps1 script like this via the scripts object? Is any special setup/config required? Are there any additional constraints?
回答1:
Assuming powershell is in you PATH you can call it like this:
"scripts": {
"test": "@powershell -NoProfile -ExecutionPolicy Unrestricted -Command ./test.ps1"
}
Tested on Windows 7 with Powershell v4.
Limitations are that you need Powershell installed and in your PATH. I didn't test it with Powershell for Linux, so not sure if this solution will be portable to other platform for now.
来源:https://stackoverflow.com/questions/46353836/how-to-execute-powershell-ps1-scripts-from-package-json-scripts