[Bash-completion-devel] Bug#535585: ssh: only sees foo in 'Host foo bar baz' in .ssh/config

Trent W. Buck trentbuck at gmail.com
Fri Jul 3 13:11:50 UTC 2009

Package: bash-completion
Version: 1:1.0-3
Severity: minor

It seems that "ssh ba[TAB]" will try to complete "ba" as a hostname,
using ~/.ssh/config as one source of names.  The file ~/.ssh/config is
described by the ssh_config(5) manpage, and in addition to the simple
Host pattern, e.g.

    Host foo.example.net
      Port 443

you can have multiple patterns

    Host foo.example.net bar.example.net
      Port 443

AFAICT bash-completion only "sees" the first one.  I'd like it to
complete all of them.  Bonus points will be awarded if you can work
out an intelligent way to handle globbing patterns, e.g.

    Host *.example.net *.example.com
      Port 443

I had a look at /etc/bash_completion.d/ssh, but it was written in such
an abstract way that I think I'd have to understand large parts of the
main /etc/bash_completion script in order to solve this myself.

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.29-1-686 (SMP w/1 CPU core)
Locale: LANG=en_AU.utf8, LC_CTYPE=en_AU.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages bash-completion depends on:
ii  bash                          4.0-3      The GNU Bourne Again SHell

bash-completion recommends no packages.

bash-completion suggests no packages.

-- no debconf information

More information about the Bash-completion-devel mailing list