これはすでに(here)に質問があります。しかし、PowerShell 2とSQL Server 2008を使用しているので、もう一度聞いてみると違う答えが出るかもしれないと思っています。SQL Serverエージェントジョブ経由でPowerShellスクリプトを呼び出す - 開始スクリプトは出力を得ません
基本的に、私はそうのようなCMDスクリプトを実行し、SQL Serverエージェントジョブを、持っている:それは開始トランスクリプトを実行すると
powershell "&D:\SQL\Job\JobDir\Upload.ps1 (various arguments including log file name)"
、ファイルが作成されますが、ヘッダーを除いて何もに書き込まれませんファイル。しかし、私がコマンドラインで実行すると、すべてが正しく記録されます。
私はすでにpowershellスクリプトで古いログファイルを管理するための多くのロジックを持っており、SQL Serverエージェントが提供するデフォルトのログを使用したくないということがあります。
情報を書き出すには、冗長フラグとwrite-messageとwrite-errorを使用してinvoke-sqlcmdを使用します。
ありがとうございました! シルビア
コメントありがとうございました。私はそれをもっと明確にするために質問を修正しましたが、ファイルは実際に作成されており、ほとんど何も書かれていません。 – Sylvia
私は依然として権限を疑います - 自分の資格でジョブを実行してみてください。 – Jimbo