[linux-l] Re: shell: internal "which" checks aliases and functions

Sven Guckes maillist-belug at guckes.net
Di Dez 12 15:00:48 CET 2006


* Matthias Kranz <matthiaskranz at gmx.de> [2006-12-12 14:51]:
> On Tue, 2006-12-12 at 14:21 +0100, Sven Guckes wrote:
> > wenn ich aber ein alias bzw eine funktion ein externes,
> > ausfuehrbares kommando im $PFAD verdecket, dann
> > moechte ich, dass meine shell mir das auch sagt.
> >
> > beispiel:
> >   zsh> alias vim='vim -X'
> >   zsh> vim () { echo $* }
> >   zsh> which vim
> >   vim: aliased to vim -X
> >   vim () { echo $* }
> >   /usr/bin/vim
> >   /usr/bin/X11/vim
>
> [root at dhcp-0-189 ~]# alias foo=ls
> [root at dhcp-0-189 ~]# which -a foo
> alias foo='ls'
>         /bin/ls
> /usr/bin/foo
> [root at dhcp-0-189 ~]# echo $SHELL
> /bin/bash

erstmal die version anzeigen:

  bash-3.1> echo $BASH_VERSION
  3.1.17(1)-release

welche which benutzen wir denn?

  bash-3.1> which which
  /usr/bin/which

alias definieren und testen:

  bash-3.1> alias foo="echo bar"
  bash-3.1> foo
  bar

alias funktioniert also.

  bash-3.1> which foo
  bash-3.1> which -a foo
  bash-3.1>

hmm... was fehlt mit denn da?

Sven



Mehr Informationen über die Mailingliste linux-l