Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I use PuTTY to connect to an Ubuntu Server (VPS). I would like to use Tab-Completion when I'm working with the command line on Ubuntu Server... How can I configure it?

share|improve this question
add comment

4 Answers

up vote 6 down vote accepted

Tab completion should work in PuTTY. Tab completion is provided by the shell you're running on the server, not by PuTTY itself. Please edit your question and provide more details including what shell you're using and what specifically happens when you try to use tab completion.

share|improve this answer
    
OK, thanks. How can I see what shell I am using? I have a Ubuntu VPS, so I guess it is the default one. Is it Bash? –  Jonas Mar 12 '10 at 13:52
2  
try echo $SHELL to see what shell you're running. –  Kevin M Mar 12 '10 at 13:57
    
Thanks. I'm running: /bin/sh –  Jonas Mar 12 '10 at 14:03
    
What do you try and type which doesn't auto-complete? Do you press tab once or twice? Have you tried using bash instead of sh? (I think on Ubuntu /bin/sh is a symlink to /bin/bash but I could be wrong) –  Josh Mar 12 '10 at 14:11
3  
Even if it's a symbolic link to /bin/bash, the executable might alter functionality depending on how it's called. Since Sanoj is seeing that the login shell is /bin/sh, it's probably acting like Bourne shell (sh) and not Bourne-again shell (bash). The best thing to do is to change your login shell. Try chsh /bin/bash –  Doug Harris Mar 12 '10 at 14:20
show 5 more comments

I have the same problem running Putty on Windows and sometimes, hitting Tab just takes the focus away from the Putty window and does not do the autofill that it usually does under /bin/bash. I have tried all of the solutions mentioned above and none of them seem to fix this problem for me.

This is how I fixed mine. Go to the Windows Desktop screen and press the Alt-Tab and Ctrl-Tab combination keys a few times and that seems to fix it for me. Now go back to the Putty screen and try Tab again.

share|improve this answer
    
Somewhat surprisingly this actually worked –  Graeme Feb 19 at 6:31
    
Same here! First time it happened to me with Putty –  leonbloy Apr 11 at 0:21
add comment

I had an interesting variation of this, where it worked for root, but not for my personal user. It's a local VM, as krowe suggested, on a VirtualBox running Debian. I used the same connection, so the issue had to be on the server side.

As it turned out, the difference was that root had /bin/bash in /etc/passwd, while the personal user had /bin/sh.

Changing the default shell to /bin/bash solved the problem for me.

share|improve this answer
add comment

I know this is an old question but I've run into this problem a few times and have found that the real solution is not server side at all but it's on the client side and this is the first thing that comes up when I searched for a solution to the problem.

OK, the OP mentions that he is using the VPS version of Ubuntu. This makes me suspect that he is running a virtual server and because he is having this particular problem I'd bet that the server is being hosted locally. When I've encountered this in the past it is due to a problem with VM tools. It is annoying because you'll need to completely restart the host OS but afterwards you should be good. You may want to just try shutting down VMware or maybe just unplugging your keyboard would also work but my desktop starts up really fast so I usually just do a full restart.

In my particular case, this problem happens every time I try to install the latest Kubuntu release using the VMware quick install feature (which also fails BTW). It even happens when the server I'm connecting to is a remote server. Hope this helps someone.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.