Ich muss in der Lage sein, die Ausgabe von alphabetisch zu sortieren, find
bevor ich sie an einen Befehl weitergebe. Die Eingabe | sort |
zwischen hat nicht funktioniert. Was konnte ich also tun?
find folder1 folder2 -name "*.txt" -print0 | xargs -0 myCommand
.
unterschiedlich gehandhabt ... Wennsort
es am Ende der Liste auftaucht ... wirdpython
es nach oben sortiert. (Vielleicht mit Python sortiertLC_COLLATE=C
)-t \0
Option zum Sortieren (was ein-z
Synonym ist)|sort
Lösungen ist, dass Sie sie nicht-exec
mehr verwenden können. OK, obwohl es möglich ist, Ihre Aussage umzuschreiben,-exec
damit sie funktioniertxargs
, lautet die Frage: Was ist mit "Mini-Skripten" ? (sh -c ...
) Ich würde das nicht alsxargs
printf %s\\n a b c d e | xargs -n3 sh -c 'printf %s, "$@"; printf \\n' x
Ich denke, Sie brauchen die
-n
Flagge für Art #Nach Mann sortieren:
bearbeiten
Das print0 hat vielleicht etwas damit zu tun, ich habe es gerade getestet. Nehmen Sie das print0 heraus, Sie können die Zeichenfolge mit dem
-z
Flag in Sort beendenquelle
print0
scheint ein Leerzeichen zwischen den Dateinamen zu sein, was ich leider an meinen Befehl weitergeben mussWenn Sie GNU Parallel http://www.gnu.org/software/parallel/ installiert haben, können Sie dies tun:
Sie können GNU Parallel einfach installieren, indem Sie:
In den Introvideos zu GNU Parallel erfahren Sie mehr: https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1
quelle