Кеширование функций PowerShell ISE, как от него избавиться? - PullRequest
0 голосов
/ 24 сентября 2018

Последние 2 часа я боролся за попытки убить кэширование функций в PowerShell ISE.Вот минималистичный пример, демонстрирующий проблему:

function myFunction {"Monday"}

отображает: понедельник

function myFunction {" вторник "}# отредактировано, сохранено ..

по-прежнему отображает: понедельник

ОБНОВЛЕНИЕ: выяснили ..!По-прежнему будет публиковать, так как некоторые другие могут выиграть. Как это происходит, Powershell чувствителен к расположению объявления функции по сравнению с вызовом к ней.Это должно быть ПОСЛЕ ... Это было бы менее коварно, если бы оно просто выдавало ошибку с чем-то вроде «Объект не найден», но нет, оно выполнялось бы хорошо, если бы не то, что вы считаете раздражающим поведением кэширования.Я пишу сценарии на Linux с Perl, который нечувствителен к объявлению / вызову функций, поэтому снижает мою защиту ..

1 Ответ

0 голосов
/ 24 сентября 2018

Сохранение файла не приводит к его повторному выполнению.Если вы не перезагрузите привязку функции, она останется в этом сеансе , если вы не перезапустите сеанс ( CTRL + T для новой вкладки сеанса в ISE).


function myFunction { 'Monday' }

F5

PS /> myFunction
Monday

function myFunction { 'Tuesday' }

F5

PS /> myFunction
Tuesday
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...