나는 powershell에서 일부 병렬 SQL Server 2005 데이터베이스 복원을 수행하고 있습니다. 내가 한 일은 cmd.exe를 사용하여 powershell이 완료 될 때까지 기다리지 않도록 시작하는 것입니다. 내가해야 할 일은 출력을 추가로 로그 파일로 파이프하는 것입니다. Add-Content를 사용하면 powershell이 기다립니다. 원하는 것은 아닙니다.powershell에서 로그 파일에 추가하는 방법은 무엇입니까?
내 코드는 문제가 sqlcmd.exe를 -o 덮어 쓰기입니다
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)
}
입니다. 나는이 작업을 추가하려고 시도했다.
cmd.exe /c start "Restoring $database" /D"$pwd" sqlcmd.exe -S $instance -E -d master -i $tempSQLFile -t 0 >> $logFile
출력은 SQLCMD 창에 그대로 유지되고 파일로 이동하지 않기 때문에 작동하지 않는다. 어떤 제안?
감사합니다. 마크.
질문에 약간의 오타가 있습니다. SQL Server 2000을 SQL Server 2005로 변경하십시오. –