13-06-2009, Saturday-11:51:23
Zitat:Original von Cruzer
Zitat:Original von wernieman
2 Probleme
1. Es werden keine Unterverzeichnise eingerichtet
2. Das Script wird nicht automatisch beendet
2. Das ist so vorgesehen. Damit die faulen Windows Benutzer das Programm auch per Doppelklicken starten können, und das Fenster nicht immer gleich wieder verschwindet.
Lässt sich aber lösen:
Code:echo exit>./tmp.txt
mose_nightly.py makeall.mos <exit
del ./tmp.txt
Zu 1. fällt mir selbst nichts ein.
Du könntest für mose z.B. einen wahlfreien Parameter einführen, der nach Abarbeitung des Makefiles ein exit ausführt (oder einen Exit-Befehl in das Makefile einfügen ). Das wäre vom Betriebssystem unabhängig.
Wenn Du im Source für den Aufruf der Klasse und dem Command-Loop folgendes schreibts:
Code:
"""
Run MakeScript class
"""
if __name__ == "__main__":
mose = MakeScript(sys.argv)
mose.cmdloop()
kann man Deine Klasse und deren Methoden auch in anderen Programmen benutzen.
Ich habe Dein Problem mit den Unterverzeichnissen nicht ganz verstanden. Wenn es ein Problem mit den Slashes ist (/ oder \ ) dann kannst Du den Wert os.sep benutzen. Bei Linux hast Du dann den / und bei Windows den \ als Separator. Ich benutze dies in meinen Scripts um vom OS unabhägig zu sein (oder werden).