1

Мне нужно создать задачу расписания программно с помощью Powershell (PS remoting).

Моя задача немедленно выполняет скрипт powershell (а в других случаях - скрипт cmd).

$powershellcmd = (get-command powershell.exe).Definition
$upgradeWSPps1 = (Join-Path $ScriptDirectory Tests.LifeCycle.Deploy.MOSS.UpgradeWSP.ps1)

$cmdToRun = "$powershellcmd -ExecutionPolicy Bypass -WindowStyle Hidden -NoLogo -File ""$upgradeWSPps1"" "

Если вы создаете запланированное задание, предоставляя $ cmdToRun для задач, то для двойных кавычек вам нужно будет использовать как escape-символ в стиле Windows CLI, так и escape-символы в стиле Powershell. В Powershell обратная галочка `является escape-символом, но в Windows CLI (классическая оболочка Windows) это косая черта.

Есть предложения по этому поводу? какой-нибудь хороший пример кода?

1 ответ1

0

Почему вы хотите создать запланированное задание на удаленном компьютере, чтобы немедленно запустить скрипт? Просто запустите скрипт прямо на удаленном компьютере.

Invoke-Command -ComputerName COMPUTER -ScriptBlock { COMMAND }

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .