web-dev-qa-db-ja.com

Ubuntuサーバーに接続するPuTTYでタブ補完を使用するにはどうすればよいですか?

PuTTYを使用してUbuntuサーバー(VPS)に接続しています。 Ubuntu Serverでコマンドラインを使用しているときにTab-Completionを使用したいのですが、どうすれば設定できますか?

12
Jonas

タブ補完はPuTTYで機能するはずです。タブ補完は、PuTTY自体ではなく、サーバーで実行しているシェルによって提供されます。質問を編集し、使用しているシェルや、タブ補完を使用しようとすると特に何が起こるかなど、詳細を入力してください。

13
Josh

これには興味深いバリエーションがあり、rootでは機能しましたが、個人ユーザーでは機能しませんでした。これは、kroweが示唆したように、Debianを実行しているVirtualBox上のローカルVMです。同じ接続を使用したため、問題はサーバー側にある必要がありました。

結局のところ、個人ユーザーが/ bin/shを持っているのに対し、rootは/ etc/passwdに/ bin/bashを持っているという違いがありました。

デフォルトのシェルを/ bin/bashに変更は問題を解決しました。

11

WindowsでPuTTYを実行すると同じ問題が発生し、時々、 Tab 単にフォーカスをPuTTYウィンドウから外し、通常/bin/bashで行うオートフィルを実行しません。上記の解決策をすべて試しましたが、どれもこの問題を解決していないようです。

これが私の修正方法です。 Windowsデスクトップ画面に移動し、 Alt-Tab そして Ctrl-Tab 組み合わせキーを数回使用すると、問題が解決するようです。 PuTTY画面に戻って、 Tab 再び。

6
kambiz

次のコマンドを入力します。

Sudo vi /etc/bash.bashrc

次の行を探します。

# enable bash completion in interactive shells
# if ! shopt -oq posix; then
#  if [ -f /usr/share/bash-completion/bash_completion ]; then
#    . /usr/share/bash-completion/bash_completion
#  Elif [ -f /etc/bash_completion ]; then
#    . /etc/bash_completion
#  fi
# fi

次のようにするには、いくつかの行のコメントを外します。

# enable bash completion in interactive shells
if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  Elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi

保存してPuTTYを閉じ、再度開きます。

3
aashish

シェルがデフォルトの/bin/shである可能性があります。

次のコマンドを使用して、代わりに/bin/bashを使用して修正できます。

chsh
/bin/bash

私はこれが古い質問であることを知っていますが、この問題に何度か遭遇しましたが、本当の解決策はサーバー側ではなくクライアント側にあることがわかりました。これは私が検索したときに最初に出てくる問題です問題の解決策。

OK、OPはUbuntuのVPSバージョンを使用していると述べています。これは、彼が仮想サーバーを実行していることを疑わしくさせ、彼がこの特定の問題を抱えているので、サーバーがローカルでホストされているに違いないと思います。過去にこれに遭遇したときは、VM toolsの問題が原因です。ホストOSを完全に再起動する必要があるため、それは問題ありませんが、その後は問題ありません。 VMwareをシャットダウンしてみたり、キーボードを取り外したりするだけでも問題はないかもしれませんが、デスクトップの起動が非常に速いため、通常は完全に再起動します。

私の特定のケースでは、この問題が発生しますevery VMwareクイックインストール機能を使用して最新のKubuntuリリースをインストールしようとしています(BTWにも失敗します)。接続しているサーバーがリモートサーバーの場合にも発生します。これが誰かを助けることを願っています。

0
krowe

キーボードの下のPuTTYで、[Linux]を選択します。次に、[機能]で[別のウィンドウへの切り替えを無効にする]を選択します。

ADBPuttyで働いた

0
Don