如何创建动态powershell查询?

时间:2012-01-13 04:47:33

标签: powershell redgate

我有一个Powershell查询来获取数据库的备份。但我需要备份具有不同名称的数据,如DATABASEBACKUP_CURRENTDATE。我怎样才能做到这一点?

./RedGate.SQLAzureBackupCommandLine.exe /as: AzureServerNAME/ad: AzureDatabaseName    /au:AzureUserName /ap:AzurePassword /cc /s /ls:. /ld:LOCALDATABASENAME_CURRENTDATE /dl /v /ba

3 个答案:

答案 0 :(得分:0)

首先,构建一个包含当前日期的字符串:

$backupName = $("Backup-{0}" -f [DateTime]::Now.ToString("yyyy-MM-dd"))

然后调用RedGate并使用日期字符串作为参数:

./RedGate.SQLAzureBackupCommandLine.exe /as: AzureServerNAME /ad: AzureDatabaseName /au:AzureUserName /ap:AzurePassword /cc /s /ls:. /ld:$backupName /dl /v /ba

Ed:Copypaste / markup与括号和冒号混淆,固定'em。

答案 1 :(得分:0)

要获取使用当前日期构建的字符串,您只需执行以下操作:

"DATABASEBACKUP_{0:MM-dd-yyyy}" -f [DateTime]::Now

它会提供类似DATABASEBACKUP_01-12-2012的内容。您可以根据需要将其用作参数

答案 2 :(得分:0)

投掷另一种解决方案......

“DATABASEBACKUP _ $(Get-Date -Format MM-dd-yyyy)”