如果您熟悉 PowerShell 并希望使用依赖项,请尝试psake。它看起来像什么:
psake script.ps1:-------
properties {
$dbServer = 'sqlexpress'
...
}
task default -depend StopServer1, StopServer2
task StopS1 -depend MakeS1Backup, StopSqlServer1 {
...
}
task MakeS1Backup {
... make backup
}
task StopSqlServer1 {
stop-service ...
}
# and anything similar to StopServer2
然后你可以这样称呼它(还有更多选项):
Invoke-Psake script.ps1
#or
Invoke-Psake script.ps1 -task StopS1 #calls only StopS1 task and all other scripts it depends on
#or
Invoke-Psake script.ps1 -task MakeS1Backup #only backups S1, it doesn't depend on anything else
它的作用 - 它停止服务器 1(任务 StopS1)并在此之前处理 StopS1 所依赖的所有任务。因此,在停止 S1 之前备份 S1 并停止 Sql server 1,依此类推。
我喜欢它比 msbuild 配置好得多,它非常冗长和丑陋(虽然非常强大)。