Windows 10 の OpenSSH クライアントで最後のコマンドを実行する

Windows 10 の OpenSSH クライアントで最後のコマンドを実行する

私は、Powershell 経由で Wi​​ndows 10 (Home) に同梱されている OpenSSH クライアントを使用しています。最後のコマンドを繰り返すにはどうしたらいいですか? これまでは、上矢印キーを使用して最後に実行したコマンドを参照していましたが、これは機能しません。矢印キーを使用すると、コマンド ラインに奇妙な文字が表示されます (つまり、^[[A)。!! などの他の Linux 関連コマンドも機能しません... 何かアイデアはありますか?

編集: 問題はサーバー側 (Unbuntu) にあり、Windows 上の OpenSSH クライアントにはないようです (Putty でも同じ問題が発生します)。そこで、質問です: リモート サーバーで、キーを離すと最後のコマンドがアクティブになり、タブで自動補完がアクティブになるにはどうすればよいですか。

答え1

sh代わりに、シェルがデフォルトになっているようですbashshのコマンドライン編集機能は非常に限られており、上矢印/下矢印による以前のコマンドの呼び出しはサポートされていません。

これを確認するには、次のコマンドを入力します。

grep '^username:' /etc/passwd

もちろん、置き換えるべきところはユーザー名Linux システムで使用する実際のユーザー名を入力します。

次のような行が表示されます (私の場合)。

raj:x:1000:1000:Jarek,,,:/home/raj:/bin/bash

デフォルトのシェルは行末に表示されます。上記のように表示される場合は、上矢印/下矢印が機能するはずです。機能しない場合は、誰かがシェルの起動スクリプト (通常はファイル)/bin/bashで何かを間違えたに違いありません。.profile.bashrc

シェルが/bin/bash(たとえば/bin/sh) と異なる場合は、変更してみてください。 コマンドchsh(パスワードを要求されます) を入力し、/bin/bash新しいシェルとして と入力します。新しいセッションにログインすると、新しいシェルがアクティブになります。

関連情報