bash operation question
Tim Chase
blinux.list at thechases.com
Sun Jul 19 18:36:33 UTC 2015
On July 19, 2015, Jude DaShiell wrote:
> When using tab completion in bash, sometimes more than a single
> possibility arises if there are say two or more paths starting out
> with the same prefix. To select from one of those choces, do I
> need to key in the whole choice from the beginning of the path or
> can I key in enough letters to uniquely identify my choice after
> that list displays?
You only need to type enough to disambiguate it and then hitting
<tab> will complete until the next ambiguity. So if you have a
directory containing the following three files with date-stamps for
the names:
2015-04-01.txt
2015-04-09.txt
2015-05-15.txt
you can type "2" followed by <tab> and it will complete up to the
month. You can then type "5" and hit <tab> and it will complete the
last file. Or instead of "5", you can type "4" and hit <tab>, and it
will complete the "-0" then wait for you to disambiguate with either
"1" or "9", after which you can then hit <tab> again to complete the
rest of the file-name.
Alternatively, you can add the following line to your .bashrc (or just
execute it in a shell to test it out)
bind "TAB:auto-complete"
which will give the DOS/Windows flavor of completion where hitting
<tab> will complete with the next possible completion-name. So with
the above files, you'd type "2" followed by <tab> and it would use
"2015-04-01.txt" then you could hit <tab> again and it would change
it to "2015-04-09.txt" and <tab> again for the "2015-05-15.txt" file.
> I tried search inside man bash for list completion and did not find
> this material though a long time ago I was looking for something
> else and stumbled on this material in that man page.
The information is scattered around a bit. In the bash man-page,
it's in the "READLINE" section under the "Readline Key Bindings"
sub-section. But it doesn't detail everything, so you have catch
that the "bind" command is a bash built-in, so you then execute
bind -l
to list all the available bindings. I don't have a good resource for
detailing all of the available bindings, but the above should at
least get you started.
-tim
More information about the Blinux-list
mailing list