Wie kann ich ein Programm in einem anderen Verzeichnis in der Linux-Befehlszeile ausführen?

2

Wie kann ich ein Programm ausführen, ohne cdin das Verzeichnis zu wechseln, in dem es sich befindet?

Ich habe es immer wieder versucht ./my/dir myfile.pl, ohne die Führung, .aber keine Arbeit.

XOR
quelle

Antworten:

6

Sie geben den vollständigen Pfad der ausführbaren Datei ein:

./path/to/my/dir/myfile.pl
don_crissti
quelle
Die Datei wird weiterhin in dem Verzeichnis ausgeführt, in dem Sie sich gerade befinden. Denken Sie daran.
UtahJarhead
-2

Zwei Punkte lösen das Problem, ein Punkt erzeugt einen Fehler (mindestens unter Debian) wie im folgenden Beispiel:

../usr/local/bin/myprogram

BurakT
quelle
1
Zwei Punkte lösen das Problem nicht. Der Punkt bezieht sich auf das aktuelle Verzeichnis, zwei Punkte beziehen sich auf das übergeordnete Verzeichnis. Es sind verschiedene Pfade, von denen einer derjenige sein kann oder nicht, den Sie suchen. Abhängig vom aktuellen Verzeichnis funktioniert Ihr Beispiel möglicherweise, aber ich glaube, Sie suchen nach allgemeineren Informationen /usr/local/bin/myprogram.
Marcks Thomas
1
Egal in welchem ​​Verzeichnis ich mich befinde, ein Punkt generiert einen Bash-Fehler!
BurakT