Вы всегда можете получить доступ к своим глобальным переменным из скрипта, используя $ global: var name внутри вашего скрипта, у вас есть локальная область, и вы не столкнетесь с конфликтами. Если ты . Исходя из вашего скрипта вы переопределите глобальный var.
Например, если есть сценарий
$Crap ="test"
$Crap
И, выполняя текущие команды, вы получаете то, что хотите. В строке 2 мы запускаем скрипт, и var не получает конфликта, но если вы запускаете скрипт, как в строке 4 с помощью. Источник вы получаете то, что вы обнаруживаете, что благодаря пути. оператор работает
1:PS C:\Users\Adam> $crap = "hi"
2:PS C:\Users\Adam> .\test.ps1
test
3:PS C:\Users\Adam> $crap
hi
4:PS C:\Users\Adam> . .\test.ps1
test
5:PS C:\Users\Adam> $crap
test
6:PS C:\Users\Adam>
если вы добавите следующую строку в скрипт, запустите его
$global:crap;
вы получите
PS C:\Users\Adam> .\test.ps1
test
hi