l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
July 7: Social gathering
Next Installfest:
Latest News:
Jun. 14: June LUGOD meeting cancelled
Page last updated:
2012 Feb 24 10:17

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] Bash completion mystery
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] Bash completion mystery

I think we're due for an 'advanced bash' talk ;)

Stuff like this, as well as adding your own programs' completion
functions (e.g. trying 'tuxpaint --f<tab><tab>' yields
"--fancycursors --fullscreen", and 'mplayer <tab><tab>' to shows
playable media in the current directory)


On Fri, Feb 24, 2012 at 07:55:32AM -0800, Wes Hardaker wrote:
> >>>>> On Thu, 23 Feb 2012 19:51:27 -0800, Bryan Richter <bryan.richter@gmail.com> said:
> BR> Functions can be discovered with 'declare -f'.
> The problem with todays environment is that there is real-executables,
> aliases and functions.  Aliases are pretty much lame in bash so everyone
> uses functions (which can take arguments, etc).
> But in the end, there are in fact 3 places to look for a definition.  So
> about a month ago I wrote this:
>     wh()       {
>         prog="$1"
>         if [ "`declare -F $prog`" != "" ] ; then
>             declare -f $prog
>         elif alias $prog > /dev/null 2>&1 ; then
>             alias $prog
>         else
>             which $prog
>         fi
>     }
> Which if you use in replace of `which` checks all three sources and
> reports the definition or location to you.
>   # wh ifconfig
>   /sbin/ifconfig
>   # wh wh
>   wh () 
>   { 
>       prog="$1"
>       ...
> -- 
> Wes Hardaker                                     
> My Pictures:  http://capturedonearth.com/
> My Thoughts:  http://pontifications.hardakers.net/
> _______________________________________________
> vox-tech mailing list
> vox-tech@lists.lugod.org
> http://lists.lugod.org/mailman/listinfo/vox-tech

Sent from my computer
vox-tech mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
Appahost Applications
For a significant contribution towards our projector, and a generous donation to allow us to continue meeting at the Davis Library.