Je fais des restaurations de base de données SQL Server 2005 parallèles dans PowerShell. La façon dont je l'ai fait est d'utiliser cmd.exe et de démarrer afin que PowerShell n'attend pas pour qu'il se termine. Ce que je dois faire est de canaliser la sortie dans un fichier journal avec append. Si j'utilise Add-Content, alors powershell attend, ce qui n'est pas ce que je veux.Comment ajouter à un fichier journal dans PowerShell?
Mon extrait de code est
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)
}
Le problème est que sqlcmd.exe -o écrasements. Je l'ai essayé de le faire à ajouter:
cmd.exe /c start "Restoring $database" /D"$pwd" sqlcmd.exe -S $instance -E -d master -i $tempSQLFile -t 0 >> $logFile
Mais cela ne fonctionne pas parce que les séjours de sortie dans la fenêtre SQLCMD et ne va pas dans le fichier. Aucune suggestion?
Merci, Marque.
Une petite faute de frappe dans votre question. Veuillez remplacer SQL Server 20005 par SQL Server 2005. –