0

PowerShell の出力をログに記録する必要があります。私のpsファイルは次のようなものです:

#Set-ExecutionPolicy Unrestricted
$ErrorActionPreference="SilentlyContinue"
Stop-Transcript | out-null
$ErrorActionPreference = "Continue"
$date = (Get-Date).tostring("MMddyy HHmmss")
$filename = 'C:\apierror\logs\' + $date + '.txt'
Start-Transcript -path $filename -append

$python = "C:\Python34\python.exe"

$python_path = "C:\script.py"

cd (split-path $python_path)

& $python $python_path

Stop-Transcript

これで、このファイルを PowerShell から直接実行すると、出力が正しくログに記録されます。しかし、タスクスケジューラから実行しようとすると、コンソール出力の一部のみがファイルに保存されます。

なぜそれが考えられるのでしょうか?

4

1 に答える 1

0

トランスクリプトを使用すると、何らかの理由で部分的な出力のみが保存されます。powershellではなく、Pythonファイルに直接ログを使用することになりました。正しく動作しているようです。

于 2016-03-29T00:09:53.677 に答える