我正在做一些並行的SQL Server 2005數據庫恢復PowerShell中。我這樣做的方式是使用cmd.exe並啓動,以便powershell不會等待它完成。我需要做的是用append將輸出傳輸到一個日誌文件中。如果我使用Add-Content,那麼PowerShell會等待,這不是我想要的。如何附加到PowerShell中的日誌文件?
我的代碼段是
foreach ($line in $database_list)
{
<snip>
# Create logins
sqlcmd.exe -S $instance -E -d master -i $loginsFile -o $logFile
# Read commands from a temp file and execute them in parallel with sqlcmd.exe
cmd.exe /c start "Restoring $database" /D"$pwd" sqlcmd.exe -S $instance -E -d master -i $tempSQLFile -t 0 -o $logFile
[void]$logFiles.Add($logFile)
}
的問題是,sqlcmd.exe -o覆蓋。我試着這樣做是爲了追加:
cmd.exe /c start "Restoring $database" /D"$pwd" sqlcmd.exe -S $instance -E -d master -i $tempSQLFile -t 0 >> $logFile
但由於輸出停留在SQLCMD窗口,而且不進入文件這是行不通的。有什麼建議麼?
感謝, 馬克。
在你的問題中的小錯字。請將SQL Server 20005更改爲SQL Server 2005. – 2010-03-16 11:13:38