Использование системной переменной в строке для получения версии файла в Powershell - PullRequest
0 голосов
/ 28 ноября 2018

Я пытаюсь заставить что-то подобное работать, но не могу понять.

(Get-Item env:userprofile\AppData\Local\Microsoft\OneDrive\OneDrive.exe).VersionInfo.FileVersion

Я получаю сообщение об ошибке, что оно не существует, хотя я знаю, что оно существует.

Если я запускаю то же самое с известным вошедшим пользователем, как показано ниже,

(Get-Item c:\users\jonesb\AppData\Local\Microsoft\OneDrive\OneDrive.exe).VersionInfo.FileVersion

Я получаю версию, которую ищу.Я буду запускать этот скрипт на тысячах машин, и я не знаю, кто будет авторизован на каждой машине.Пожалуйста, сообщите.

1 Ответ

0 голосов
/ 28 ноября 2018

env:userprofile расширяется до env:\userprofile.Это PSDrive, доступ к которому можно получить с помощью командлетов, например Get-Item, но он не раскрывается в строках.Вам нужно использовать переменную $env:userprofile.

(Get-Item $env:userprofile\AppData\Local\Microsoft\OneDrive\OneDrive.exe).VersionInfo.FileVersion
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...