Seite 1 von 1

Pfad des Scriptes / Moduls?

Verfasst: Freitag 9. Dezember 2011, 20:54
von CM
Ui, ui, ui, bin echt draussen ...

Also z. Zt. arbeite ich an einem Reportgenerator für meine Arbeit (Linux). Das Script liegt in einem Verzeichnis zusammen mit diversen .tex-Templates und soll zusammen mit jinja2 schöne Reporte generieren. Das Script ist verlinkt in einem anderen Verzeichnis, das Teil von PATH ist (genau /home/cm/bin). Da aber das Scriptverzeichnis je nach Rechner an anderen Orten sein kann, muß ich dem Script beibringen in seinem Verzeichnis nach den Templates zu schauen. (Nein, installieren möchte ich nichts, zumindest nicht, während ich entwickle.) Gibt es da eine Möglichkeit?

Gruß,
Christian

Re: Pfad des Scriptes / Moduls?

Verfasst: Freitag 9. Dezember 2011, 21:02
von /me

Code: Alles auswählen

print os.path.dirname(__file__)

Re: Pfad des Scriptes / Moduls?

Verfasst: Freitag 9. Dezember 2011, 21:04
von cofi
@/me: Das hilft bei symbolischen Links nicht.

@CM: `os.path.realpath` statt `os.path.dirname` hilft.

Re: Pfad des Scriptes / Moduls?

Verfasst: Freitag 9. Dezember 2011, 21:08
von /me
cofi hat geschrieben:@/me: Das hilft bei symbolischen Links nicht.
Den Teil mit dem symbolic link hatte ich so gar nicht wahrgenommen und aus meinem Codesnippet extra realpath entfernt ...

Re: Pfad des Scriptes / Moduls?

Verfasst: Freitag 9. Dezember 2011, 21:27
von CM
Vielen Dank - war gerade schon dabei das mit dem Symlink näher zu erläutern, als ich Deine Antwort las, cofi. Funktioniert tadellos - zusammen mit os.path.split bekomme ich, was ich möchte.

Das mit dem Symlink hat man echt gut übersehen können - sorry.

Re: Pfad des Scriptes / Moduls?

Verfasst: Freitag 9. Dezember 2011, 21:34
von cofi
Wenn dir nur an dem Verzeichnis gelegen ist (was ich wiederum uebersehen hab :oops:), solltest du lieber /me folgen und `dirname` nutzen.

Re: Pfad des Scriptes / Moduls?

Verfasst: Freitag 9. Dezember 2011, 22:54
von BlackJack
@CM: Vielleicht könntest Du aus Deinem Python-Code auch ein Package machen und den entsprechenden Loader von `jinja` verwenden!?

Re: Pfad des Scriptes / Moduls?

Verfasst: Samstag 10. Dezember 2011, 21:29
von CM
Na ja, könnte ich schon. Damit verbunden wäre ja ein bekanntes Verzeichnis für Nicht-Python-Dateien. Ist schon eine Überlegung wert. Danke.