Was ist los mit diesem xargs-Befehl?


7

Betrachten Sie die Ausgabe:

% { echo one; echo two; echo three; } | xargs -I{} -L1 echo test-{} 
test-{} one
test-{} two
test-{} three

Warum wird nicht {}gemäß der Handbuchseite (und auch meinem Gedächtnis) ersetzt?

Wie die Befehlszeile zu ändern , zu erhalten test-one, test-two, test-threeLinien als Ausgabe?

Antworten:


8

Entfernen Sie die -L 1; es wird impliziert durch -I(wie die Manpage sagt), aber es würde es überschreiben, wenn es später angegeben wird.


4

Es funktioniert ohne "-L1", da es implizit gesetzt ist.

{ echo one; echo two; echo three; } | xargs -I{} echo test-{}
test-one
test-two
test-three

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.