Wo ist die ausführbare Datei?

Wo ist die ausführbare Datei?

Ich habe diesen Befehl, den ich ausführe. Nennen wir ihn foo. Ich kann ihn ausführen foo, ohne den vollständigen Pfad anzugeben, fooetwa so:

$ foo
missing args

Ich vermute, foodass es sich um ein Bash-Skript handelt, deshalb möchte ich mir den Quellcode darin ansehen foo. Allerdings which fooerhalte ich dabei die Standardfehlermeldung:

which: no foo in (/usr/local/bin ...removed for brevity ...)

Was gibt?

Antwort1

Sie können das typeintegrierte Argument verwenden, das angibt, wie das Argument interpretiert würde, wenn es als Befehlsname verwendet würde, z. B. als Funktion, integriertes Argument, Binärcode (unter $PATH).

$ f() { echo foo; }
$ type f
f is a function
f ()
{
    echo foo
}
$ type type
type is a shell builtin
$ type grep
grep is /usr/bin/grep
$ alias z='echo zee zee'
$ type z
z is aliased to `echo zee zee'

Siehe auchWarum nicht verwenden "which"? Was soll man dann verwenden?für eine ausführlichere Abhandlung zu diesem Thema.

verwandte Informationen