2016-08-08 37 views
3

Nehmen wir an, ich habe 2 Dateien f1.txt und f2.txt. f1.txt müssen einige Korrekturen vorgenommen werden, nach denen beide Dateien zusammen verarbeitet werden müssen. Wie kann ich die Ausgabe von f1.txt Korrekturen an die Pipeline mit f2.txt Daten zusammenführen? Hier ist eine Abbildung:Wie zu einer Pipeline in Powershell hinzufügen?

Get-Content f1.txt | 
% { 
    $_ #SOME OPERATION 
} # how to merge this output into next pipeline? 
Get-Content f2.txt | 
% { 
    #COMBINED OPERATIONS on f1.txt output and f2.txt 
} > output.txt 

Edit: Ich verstehe, ich kann die erste Operation in eine temporäre Datei speichern und wieder daraus für den kombinierten Betrieb lesen:

... 
} > temp.txt 
Get-Content temp.txt, f2.txt | 
... 

Aber ist es eine Möglichkeit, zu tun es ohne Pufferdateien zu erstellen?

Antwort

4

Sie können mehrere Befehle in einzelnen SciptBlock wickeln und rufen Sie es:

& { 
    Get-Content f1.txt | 
    % { 
     $_ #SOME OPERATION 
    } 
    Get-Content f2.txt 
} | 
% { 
    #COMBINED OPERATIONS on f1.txt output and f2.txt 
} > output.txt 
+0

Dank! Lief wie am Schnürchen. – hazrmard