从 powershell 脚本(带有 nuget安装并在路径上),我试图执行一个可执行文件(.net,如果这很重要)......但由于某种原因,我无法在命令窗口中显示STDOUT .
nuget install mdoc -OutputDirectory packages -ExcludeVersion
start-process "packages/mdoc/tools/mdoc.exe" "--version"
echo "done"
Run Code Online (Sandbox Code Playgroud)
这个 应该输出mdoc 5.7.2(在本文发布时,当前版本)。但是您会看到 nuget 输出,然后done.
关于为什么这不显示的任何想法?
我想使用 Invoke-Command 在本地计算机上的文件中运行脚本,以便我可以使用 -ArgumentList 传入参数。我遇到了一个我不明白的错误,所以我简化了我的命令。当我这样做时:
Invoke-Command -FilePath 'getprocess.ps1'
Run Code Online (Sandbox Code Playgroud)
getprocess.ps1的内容是:
Get-Process
Run Code Online (Sandbox Code Playgroud)
我收到的错误消息是:
Invoke-Command :无法使用指定的命名参数解析参数集。
行:1 字符:1
+ 调用命令 -FilePath 'getprocess.ps1'
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Invoke-Command], ParameterBindingException
+FullyQualifiedErrorId:AmbigouslyParameterSet、Microsoft.PowerShell.Commands.InvokeCommandCommand
我对这个错误消息感到困惑。这是什么意思?我该如何让它发挥作用?
我正在创建 PowerShell 脚本来自动构建 Angular CLI 项目。当我在 .ps1 文件中使用此命令时:
Start-Process -FilePath ng build -WorkingDirectory D:\pathToAngularProject -Wait
Run Code Online (Sandbox Code Playgroud)
它工作完美,但创建的 JavaScript 构建并不丑陋。为了能够创建生产版本,我需要添加“--prod”参数。但是当我更改上面的示例时:
Start-Process -FilePath ng build -ArgumentList '--prod' -WorkingDirectory D:\pathToAngularProject -Wait
Run Code Online (Sandbox Code Playgroud)
有谁建议我如何在 PowerShell 脚本中向“ng build”命令添加参数?