Развернуть строковую переменную, хранящуюся в одинарной кавычке в Powershell
У меня есть сценарий, где мне нужно построить путь PowerShell как $RemotePath = '$($env:USERPROFILE)\Desktop\Shell.lnk'
, Эта переменная передается на удаленную машину, где она должна быть выполнена. Удаленный компьютер получает это как строковую переменную. Как мне расширить строку для оценки $env:USERPROFILE
?
2 ответа
Решение
Разверните строку на удаленной стороне:
$ExecutionContext.InvokeCommand.ExpandString($RemotePath)
Используя двойные кавычки. PowerShell не будет расширять переменные внутри строк в одинарных кавычках.