我正在从 Psake 构建工具转换到 Cake (https://cakebuild.net/)。我正在为一个相当大的解决方案(30+ 个项目)创建脚本,并且有(目前)9 种不同的部署。在 Psake 中,调用 PowerShell 命令非常简单,因为整个脚本都在 PowerShell 中运行。
但现在我有一个问题。我必须调用一些在 PowerShell 中运行的命令,但我找不到执行它们的方法。
以下是一些例子:
感谢您的答复,此致敬礼,马丁。
但现在我有一个问题。我必须调用一些在 PowerShell 中运行的命令,但我找不到执行它们的方法。
以下是一些例子:
taskkill /IM iisexpress.exe
Invoke-Command -ComputerName <testing server> -ScriptBlock {import-module WebAdministration; Stop-Website <'name of website'>}
Invoke-Command -ComputerName <testing server> -ScriptBlock {import-module WebAdministration; Start-Website <'name of website'>}
我尝试使用StartAndReturnProcess(例如:StartAndReturnProcess(“taskkill /IM iisexpress.exe”);),但没有成功。 我还发现了Cake.IIS插件,它可能会解决我启动和停止IIS的问题,但我还想调用其他一些PS命令。
是否可以从任务中简单地调用PowerShell命令? 像这样:
Task("DoSomeMagic")
.Does(() =>
{
ExecutePowerShellCommad("taskkill /IM iisexpress.exe");
ExecutePowerShellCommad("Invoke-Command -ComputerName <testing server> -ScriptBlock {import-module WebAdministration; Stop-Website <'name of website'>}");
//ToDo: other magic
});
感谢您的答复,此致敬礼,马丁。