SSHシェルで動作しない.bashrcの "set -o emacs"を修正する方法

SSHシェルで動作しない.bashrcの

私はユーザーとホストで構成されたLDAPベースのネットワークで作業しています。私のユーザーはLDAPユーザーなので、すべてのホストに存在し、私のユーザーのホームディレクトリはマウントポイントとしてすべてのホストに存在します。

~/.bash_profileソースが~/.bashrcあれば設定しておきました。

~/.bashrc私の最後の行の中にset -o emacs

ローカルシェルは、ログイン後にemacsスタイル行編集を有効にするようにemacsオプションを正しく設定します。

ただし、他のホストでsshを実行すると、他~/.bashrcのすべてをロードしてもset -o emacs適用されないか、適用され上書きされます。

そのため、現在はset -o emacs他のホストにSSHで接続するたびに手動で行う必要があります。

set -o emacsEmacsライン編集が有効になっている間にインタラクティブシェルに入るとすぐに自動的に実行されるように、別のホストでSSH経由で実行する方法はありますか?

ベストアンサー1

いくつかのコマンドを使用してmyの後にロードされ、myをオーバーライドする呼び出しが含まれていることstraceがわかりました。私のローカルコンピュータには問題が存在しないため、localhostでは問題は発生しません。/etc/inputrc~/.bashrcset editing-mode viset -o emacs/etc/inputrc

また、straceは代替アイテムとしてロードする~/.inputrc前に何を見つけるべきかを決定します。/etc/inputrc

だから私たちはtouch ~/.inputrc空のものを作成し、絞り込むinputrcset -o emacs今SSHを使用してログインすることができます:)

おすすめ記事