web-dev-qa-db-ja.com

Visual StudioNugetパッケージマネージャーコンソールで「閉じられていない」PowerShellコマンドを中止する

NuGetパッケージマネージャーコンソールで誤って無効なPowerShellコマンドを発行し、コンソールをロックしました。
コマンドは

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

次に、コンソールにプロンプ​​トとして>>と表示され、このモードを終了できませんでした。コンソールを閉じて再度開くことは役に立ちませんでした。 (VSを再起動する必要がありました)。
この場合、間違ったコマンドを正常にキャンセルして、標準のPM>プロンプトに戻る方法はありますか?

前もって感謝します。フィリップ

20
PhilippeC

これはバグのある動作のようです。 >>は、構文的に現在のコマンドが終了していないことを示します。つまり、二重引用符で囲まれた文字列を開いたが、終了していません。このモードを終了するには、[コンソールのクリア]ツールバーボタンを押します。

27
Keith Hill

VSコンソールウィンドウには、[コマンド実行の停止]ボタン(有効になっている場合は赤い四角)があります。 [コンソールをクリア]ボタンの横にあります。 ボタンはコマンドが実際に実行されている場合にのみ有効になります

受け入れられた回答に基づくと、OPは実際に実行中のコマンドを中止する必要はなかったようです。しかし、この答えは、本当にdoesコマンドを中止する必要がある人には役立つはずです。

6
Disillusioned

簡単な質問です。すでに回答済みですが、追加することがあるかもしれません。 Nuget Consoleの動作を明確にするという観点から。

これは、一重引用符または二重引用符でステートメントを開き、正しく閉じないか、まったく閉じない場合に発生します。

例(それぞれ)

Add-Migraion「Add'Employee'Model」

OR

Add-Migraion "Add'Employee 'Model

コンソールは、コマンドを2行に分割する必要があると想定するため、コマンドが終了するか、この記号>>を表示して、別の行のステートメントを閉じるのを待ちます。そのような場合、それが誤って起こった場合、あなたがしなければならないのは、ステートメントを開いた方法に基づいて"または'と入力することだけです。

2
lKashef

通常のWindowsタスクマネージャーを調べて、タスクを強制終了できる場合があります。ただし、見つけるのは難しい場合があります。

私はこれを投稿するだけでうんざりします。

1
Simon_Weaver

あります Debuggable Package Manager Visual Studioでインストールされたプログラム(これがどのバージョンで始まったかはわかりません)。

プロジェクトの正しいフォルダに手動でCDを挿入する必要がありますが、特定のタスクでは信頼性が高く、複数のウィンドウを開くこともできます。

はい - CTRL+C タスクを終了するように動作します:-)

0
Simon_Weaver