DockerでCentOSやらUbuntuやらのイメージをダウンロードしてコンテナを起動し、コンテナにログインした状態で作業をしていました。
ところが、どういうわけか、CTRL+Pを二回押さないと前の履歴が表示されません(ちなみに、CTRL+Nの方は、一回で先の履歴が表示されます)。
どうしたものかと、『bash 履歴 CTRL-P 二回』でググッてみたところ、ドンピシャのページがヒットしました。😊
»docker で Ctrl-p 2回押し問題 (detach-keys の問題) を解決するには
上記サイトから記事をいろいろたどってみ分かったのは、Dockerでは、CTRL+P CTRL+Nでコンテナからデタッチできるようになっているそうです。
つまり、コマンドラインから『exit』と入力しなくても、CTRL+P CTRL+Nで脱出できます。
CTRL+Pがデタッチ開始機能に割り当てられているので、~/.docker/config.jsonで別のキーに割り当ててやれば、一発で履歴が効くようになります。
■~/.docker/config.jsonに以下の項目を追加する。
"detachKeys": "ctrl-\\"
※1 jsonファイルなので、実際は以下のようになる。
※2 .dockerディレクトリがない場合は作成する。
{ "detachKeys": "ctrl-\\" }