Прерывание команды "незаблокированных" полномочий в консоли менеджера пакетов Visual Studio Nuget

Я случайно выпустил недопустимую команду PowerShell в консоли NuGet Package Manager и заблокировал консоль.
Команда была

PM> Get-Project -all | Where { $_.ProjectName -imatch "GPEC.Personne }

тогда консоль отобразила в качестве приглашения, и я не смог покинуть этот режим. Закрытие и повторное открытие консоли не помогло. (Необходимо перезапустить VS).
Есть ли способ изящно отменить неправильную команду в этом случае и вернуться в стандартную подсказку PM > ?

Спасибо заранее. Филипп

Ответы

Ответ 1

Это похоже на ошибочное поведение. >> указывает, что синтаксически текущая команда не завершена. То есть, вы открыли строку с двойными кавычками, но не закончили ее. Нажмите кнопку "Очистить консоль", чтобы выйти из этого режима.

Ответ 2

В окне консоли VS есть кнопка "Остановить выполнение команды" (красный квадрат, если включен). Он рядом с кнопкой "Очистить консоль". Кнопка активируется только в том случае, если команда действительно запущена.

На основании принятого ответа кажется, что OP фактически не нужно отменять исполняемую команду. Но этот ответ должен оказаться полезным для всех, кто действительно должен прервать команду.

Ответ 3

Это простой вопрос, на который уже был дан ответ, но я думаю, что у меня есть что добавить. С точки зрения выяснения поведения Nuget Console.

Это происходит, когда вы открываете оператор с одной/двойной кавычкой и не закрываете его должным образом или вообще не закрываете.

Пример (соответственно)

Add-Migraion "Добавить 'Employee' Model '

ИЛИ

Add-Migraion "Добавить модель сотрудника

Консоль будет считать, что вам нужно разбить команду на две строки, чтобы она дождалась завершения команды или закрытия оператора в другой строке, показывая этот символ >>. В этом случае, если это произошло по ошибке, все, что вам нужно сделать, это ввести " или ' в зависимости от того, как вы открыли оператор.