Переменная Powershell $ PROFILE, указывающая неправильное место. Где установлена ​​переменная $ PROFILE?

После внесения некоторых изменений в мою машину Powershell выходит из строя, потому что переменная $ PROFILE указывает на другое местоположение, чем раньше, то есть для нее установлено значение

C:\Powershell\Microsoft.PowerShell_profile.ps1

вместо того

C:\Users\user\Documents\Powershell\Microsoft.PowerShell_profile.ps1

Это вызывает такие проблемы, как не найденные установленные модули и многое другое. Итак, мой вопрос: как Powershell устанавливает значение $ PROFILE? Можно ли это изменить?


person arividar    schedule 13.04.2020    source источник
comment
Короткий ответ: вы не можете. Длинный ответ: stackoverflow.com/questions/5095509/   -  person SergeantBiggs    schedule 13.04.2020
comment
Спасибо за указатель @SergeanBiggs. Я видел длинный ответ, но он не объясняет, почему местоположение в моем случае изменилось, т.е. как PowerShell устанавливает переменную $ PROFILE? Но я решил проблему. См. ниже.   -  person arividar    schedule 13.04.2020


Ответы (1)


Решено. Оказывается, что до того, как возникла проблема, $ PROFILE указывал на папку Documents в OneDrive, т.е.

C:\Users\user\OneDrive\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

Когда я включил резервное копирование документов в OneDrive и повторно зарегистрировался, $ PROFILE вернулся в правильное место. Похоже, что если Powershell не находит расположение профиля в Documents или $ HOME, по умолчанию используется путь C: \ Powershell. Однако я не уверен - было бы неплохо иметь четкую спецификацию этого поведения.

person arividar    schedule 13.04.2020