Shell - Wie finde ich ein Verzeichnis eines Befehls?
Ich weiß, dass, wenn Sie auf shell, die nur Befehle, die verwendet werden können, sind diejenigen, die gefunden werden können auf ein Verzeichnis gesetzt, auf den WEG.
Auch ich weiß nicht, wie um zu sehen, was dirs auf meine PFAD-variable (und das ist eine gute Frage, die beantwortet werden konnten), was ich wissen möchte ist:
Komme ich zu shell und schreiben:
$ lshw
Ich will wissen, einen Befehl auf der shell, die können mir sagen, WO dieser Befehl befindet. In anderen Worten, wo dieser "ausführbare Datei" ist?
Etwas wie:
$ location lshw
/usr/bin
Jemand?
InformationsquelleAutor der Frage Gabriel L. Oliveira | 2010-05-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn du mit Bash oder zsh verwenden Sie diese:
Diese wird zeigen, ob das Ziel ist ein builtin, eine Funktion, ein alias oder eine externe ausführbare Datei. Wenn letzteres, wird es zeigen, jedem Ort, es erscheint in Ihrem
PATH
.In der Bash, für Funktionen
type -a
zeigt auch die definition der Funktion. Sie könnendeclare -f functionname
um das gleiche zu tun (Sie haben zu verwenden, die für die zsh, datype -a
nicht).InformationsquelleAutor der Antwort Dennis Williamson
Wie diese:
InformationsquelleAutor der Antwort Ignacio Vazquez-Abrams
PATH
ist eine Umgebungsvariable und kann angezeigt werden mit dem Befehl echo:Dies ist eine Liste mit Pfadangaben, getrennt durch einen Doppelpunkt '
:
'Den
which
Befehl sagt Ihnen, die Datei wird ausgeführt, wenn Sie einen Befehl ausführen:manchmal, was Sie bekommen, ist ein Pfad zu einem symbolischen Link, wenn Sie wollen, zu verfolgen, die auf Sie verlinken, wo die eigentlichen ausführbaren Leben, können Sie
readlink
und füttern die Ausgabe vonwhich
:Den
-f
parameter weistreadlink
zu halten, nach der symlink rekursiv.Hier ein Beispiel von meinem Rechner:
InformationsquelleAutor der Antwort hasen
InformationsquelleAutor der Antwort Jack
Der Korn-shell
ksh
bietet diewhence
integriert, identifiziert, die anderen shell-built-ins, Makros, etc. Diewhich
Befehl ist mehr tragbar, aber.InformationsquelleAutor der Antwort mpez0
In die TENEX-C-Shell, tcshkann man der Liste einen Befehl Standort(en), oder ob es einen eingebauten Befehl, mit der
where
Befehl z.B.:InformationsquelleAutor der Antwort Pierz