私は、Powershell 経由で Windows 10 (Home) に同梱されている OpenSSH クライアントを使用しています。最後のコマンドを繰り返すにはどうしたらいいですか? これまでは、上矢印キーを使用して最後に実行したコマンドを参照していましたが、これは機能しません。矢印キーを使用すると、コマンド ラインに奇妙な文字が表示されます (つまり、^[[A)。!! などの他の Linux 関連コマンドも機能しません... 何かアイデアはありますか?
編集: 問題はサーバー側 (Unbuntu) にあり、Windows 上の OpenSSH クライアントにはないようです (Putty でも同じ問題が発生します)。そこで、質問です: リモート サーバーで、キーを離すと最後のコマンドがアクティブになり、タブで自動補完がアクティブになるにはどうすればよいですか。
答え1
sh
代わりに、シェルがデフォルトになっているようですbash
。sh
のコマンドライン編集機能は非常に限られており、上矢印/下矢印による以前のコマンドの呼び出しはサポートされていません。
これを確認するには、次のコマンドを入力します。
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
新しいシェルとして と入力します。新しいセッションにログインすると、新しいシェルがアクティブになります。