1. ホーム
  2. パイソン

[解決済み] PowershellでPythonを終了させるためのCtrl-Cが効かなくなった件

2022-03-03 10:34:02

質問

Powershell/コマンドプロンプトでCtrl-Cを使用するとPythonが終了せず、代わりに"KeyboardInterrupt"文字列が出力されます。

最近、Windows 10を再インストールしました。再インストール前はCtrl-Cでpython(3.5/2.7)を正常に終了し、何も出力されませんでした。

なぜこのようなことが起こるようになったのか、ご存知の方はいらっしゃいますか?単純な設定なのでしょうか?

考えられる唯一の違いは、私が今python 3.6を使っていることです。Ctrl-DはWindows上のUbuntuのBashで動作し、Ctrl-Cはpythonを終了するために有効なanaconda python2環境で問題なく動作します。

解決方法は?

最近、Windows 10 Insider ビルド 15002 で発生した不具合です。

回避策としては、マップされたキーをCtrl CからCtrl Kのように変更することです。

もし、この方法がわからない場合は、以下のサイトで調べることができます。 stty -a

各bashセッションでこのコマンドを実行すると、TerminateがCtrl + Kにマッピングされます。

stty intr \^k

暫定的な解決策として、Bashrcにこれを記述し、新しいセッションが始まるたびに実行されるようにすることができます。

このバグはGithub #1569で既に報告されています。