Я использую несколько однострочных команд powershell в нашем сценарии входа в пакетный файл на наших серверах, но я не могу понять, что я делаю не так с этим.
powershell.exe -ExecutionPolicy Bypass -Command "Get-AppxPackage -allusers *Windows.Photos* | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register '$($_.InstallLocation)\AppXManifest.xml'}"
Когда я пытаюсь запустить это, я получаю сообщение об ошибке: Не удается найти путь 'C:\$($ _.INSTALLLOCATION)\AppXManifest.xml»
Я предполагаю, что есть проблема с цитированием в команде, но я пробовал разные способы и не могу заставить его работать. Если я запускаю команду ниже из командной строки powershell, она работает нормально.
Get-AppxPackage -allusers *Windows.Photos* | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"}
Я хотел бы избежать создания отдельного файла .ps1 и держать его в одной строке, если это возможно.