Die Umleitung und Rohr Operatoren sind ein Merkmal der Schale, C und C# Unterstützung Umleitung durch andere Mittel (Datei-Handles): Sie sollten etwas zu tun, ähnlich der Lage sein. Irgendwo habe ich das gelesen, weil die C# -Process-Klasse die Umleitung von Eingaben nicht unterstützt, und nant nur die Ausgabeumleitung für <exec>
bereitstellt.
Zur Befehlseingabe umleiten wir auf die Schale greifen kann:
A) Aufrufen cmd.exe
mit /c
wie oben gezeigt, in dem Beispiel von acloutier. Vorsicht ist bei weißen Räumen geboten! Tatsächlich schlägt das Beispiel aufgrund des Abstands zwischen <
und y.txt
fehl, um das Beispiel funktionsfähig zu machen. Sie können auch das value
Attribut in einem line
Attribut umwandeln, aber dann müssen Sie vorsichtig sein beim Zitieren.
B) Da konnte ich nicht bekommen Rohre den exec-cmd-Ansatz zu arbeiten, anstatt ich on the fly eine Batch-Datei am Generierung mit <echo>
:
<echo file="${WD}/login.bat">"${P4}" diff -sd | "${P4}" -x- sync -f using</echo>
<exec program="login.bat" basedir="${WD}" workingdir="${P4.WorkspaceRoot}" />
Bevor jemand anderen sagt: Ich habe versucht, mit der <-Operator, und Nant scheint nur auf weitere Tastatureingaben zu warten, kehrt also nie zurück. –