Ich muss einen SVN Pre-Commit Hook implementieren, der ein Skript ausführt, das selbst in SVN gespeichert ist.Pipe STDIN zu einem Skript, das selbst an den Python-Interpreter weitergeleitet wird?
kann ich den svn cat
Befehl Rohr, das Skript an den Interpreter Python verwenden, wie folgt:
svn cat file://$REPO/trunk/my_script.py | python - --argument1 --argument2
jedoch my_script.py
sich auf Daten erfordert STDIN verrohrt werden.
Diese Daten werden nicht in einer Datei gespeichert; Es ist im Netzwerk gespeichert. Ich würde es vorziehen, nicht die Daten in eine temporäre Datei zu haben, zum Download, wie es normalerweise könnte ich eine Pipe an einem Python-Programm:
curl http://example.com/huge_file.txt | python my_script.py
Ich bin nicht sicher, wie diese beiden Rohre zu verbinden.
gleichwertig Sie verwenden versucht haben, '>'? –
Schreiben Sie ein Wrapper-Skript, das Pysvn verwendet, um die Datei einzulesen, dann kompilieren und ausführen, so dass Ihre Standardeingabe frei ist? – agf