none
Запуск powershell скрипта из SQL Server Agent 2005 RRS feed

  • Вопрос

  • Windows 2008 x64 std, SQL2005 std, powershell 1.0. Хочу запустить скрипт из JOB.

    Сам скрипт:

     

    $sourcepath = "d:\backup\"
    
    $destpath = "\\server\share\sqlserver\"
    
    dir $sourcepath | where
     {$_.lastwritetime.date -eq (get-date
    ).date} | ForEach-Object {Copy-Item $_.PsPath -destination $destpath}
    

     

    Создаю новый step, выбираю тип CMDExec, ввожу команду c:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command c:\tasks\copy.ps1, в доп. настройках ставлю чекбокс "append output to existing file" и пробую запустить, step выполняется успешно, но нужное действие не происходит, ошибка : "Copy-Item синтаксическая ошибка в имени файла имени папки или метке тома в c:\tasks\copy.ps1:3 знак 95". Если скрипт выполнить из командной строки, то всё отлично работает.

    Прочитал, что "SQL Server Agent implements a job subsystem that allows users to directly run PowerShell scripts in SQL Server Agent. Internally this is implemented by reusing the SQLPS.EXE shell stub (which is another shape of POWERSHELL.EXE, but preconfigured for SQL Server)."

    http://blogs.msdn.com/b/mwories/archive/2009/09/30/the-use-of-write-host-and-sql-server-agent-powershell-job-steps.aspx

    Насколько я понял, это относиться к SQLServer 2008 и выше. А есть шанс запустить из 2005?


    MCP, MCDST , MCTS

Ответы

Все ответы