WindowsタスクスケジューラでXMLファイルを文字列として読み込み、正常に実行できるようにタスクを登録しようとしています。さらに、{plname}を置き換えますXMLに存在する)をタスク名で置き換えます。powershellを使用してパイプライン名を置き換えます。
<Exec>
<Command>notepad.exe</Command>
<Arguments>-Command "&{ & "./pl.ps1 {plname} run" }"</Arguments>
<WorkingDirectory>C:\Windows\System32\Tasks\Power</WorkingDirectory>
</Exec>
私は(登録-ScheduledTaskコマンドレットを除く)私のPSスクリプトを実行すると、私は{plname}が置き換えられて見ることができます。私は「登録-ScheduledTaskの」コマンドレットを実行する際 font is small but you can see {plname} is replaced by openNotepad
は、今ではタスクを正常に登録するが、タスクスケジューラのGUIにそれだけで前にやっ交換を示していません。 {plname} was replaced earlier with openNotepad, but has reverted back to its previous state.
私は自分自身を明確にしました。 私のスクリプトは、ちょうどその場合です。
$taskName = "openNotepad"
$taskTemplate = Get-Content (join-path "C:\Users\ACER\Desktop\POWERSHELL" "task-scheduler-template.xml") | Out-String
$taskTemplate -replace "{plname}", $taskName
Register-ScheduledTask -Xml $taskTemplate -TaskPath "\Power\" -TaskName $taskName
ありがとうございました:) – Ricky