{"id":2654,"date":"2016-11-01T11:12:20","date_gmt":"2016-11-01T09:12:20","guid":{"rendered":"http:\/\/www.final-memory.org\/?p=2654"},"modified":"2016-11-01T11:12:20","modified_gmt":"2016-11-01T09:12:20","slug":"kombination-find-und-xargs","status":"publish","type":"post","link":"https:\/\/www.final-memory.org\/?p=2654","title":{"rendered":"Kombination find und xargs"},"content":{"rendered":"<p>Das folgende Konstrukt funktioniert mit den GNU Versionen von xargs, mv und find, so wie es die meisten Linuxdistributionen mitbringen.<\/p>\n<p>Manchmal hat man \u00fcber mehrere Verzeichnisse verteilt gleichartige Dateien, die man in einen gemeinsamen Ordner bringen m\u00f6chte. H\u00e4ndisch geht das nat\u00fcrlich, das kann aber auch un\u00fcbersichtlich werden. Eine geschickte Verkettung von \u00a0vorhandenen Kommandos erleichtert dem Anwender dabei das Leben.<\/p>\n<p><code>find . -name \"*.mobi\" -print0 | xargs -r0 mv -t ~\/tmp\/<\/code><\/p>\n<p>Das find-Kommando sucht die Dateien mit dem genannten Muster ab dem aktuellen Verzeichnis.<\/p>\n<p>Das xargs-Kommando f\u00fchrt dann f\u00fcr jede gefundene Datei den mv-Befehl aus. Hier wird \u00fcber die -t Option ein GNU-spezifisches Feature aktiviert, bei dem immer zuserst das Zielverzeichnis angegeben wird. Die zus\u00e4tzlichen Optionen bei find und xargs \u00a0sorgen f\u00fcr korrektes Quoting der Dateinamen, wenn Leer- und Sonderzeichen enthalten sind.<\/p>\n<p>Ein praktisches Beispiel s\u00e4he wie folgt aus:<\/p>\n<p>Find ergibt folgendes Resultat:<br \/>\n<code><br \/>\n.\/a\/a.mobi<br \/>\n.\/b\/b.mobi<br \/>\n<\/code><br \/>\nxargs f\u00fchrt folgende Kommandozeilen aus:<br \/>\n<code><br \/>\nmv -t ~\/tmp\/ .\/a\/a.mobi<br \/>\nmv -t ~\/tmp\/ .\/b\/b.mobi<br \/>\n<\/code><\/p>\n<div id=\"facebook_like\"><iframe src=\"http:\/\/www.facebook.com\/plugins\/like.php?href=https%3A%2F%2Fwww.final-memory.org%2F%3Fp%3D2654&amp;layout=standard&amp;show_faces=true&amp;width=500&amp;action=like&amp;font=segoe+ui&amp;colorscheme=light&amp;height=80\" scrolling=\"no\" frameborder=\"0\" style=\"border:none; overflow:hidden; width:500px; height:80px;\" allowTransparency=\"true\"><\/iframe><\/div>","protected":false},"excerpt":{"rendered":"<p>Das folgende Konstrukt funktioniert mit den GNU Versionen von xargs, mv und find, so wie es die meisten Linuxdistributionen mitbringen. Manchmal hat man \u00fcber mehrere Verzeichnisse verteilt gleichartige Dateien, die man in einen gemeinsamen Ordner bringen m\u00f6chte. H\u00e4ndisch geht das nat\u00fcrlich, das kann aber auch un\u00fcbersichtlich werden. Eine geschickte Verkettung von \u00a0vorhandenen Kommandos erleichtert dem &hellip; <a href=\"https:\/\/www.final-memory.org\/?p=2654\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Kombination find und xargs&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28,25,24],"tags":[],"class_list":["post-2654","post","type-post","status-publish","format-standard","hentry","category-bash","category-it","category-linux"],"_links":{"self":[{"href":"https:\/\/www.final-memory.org\/index.php?rest_route=\/wp\/v2\/posts\/2654","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.final-memory.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.final-memory.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.final-memory.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.final-memory.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2654"}],"version-history":[{"count":3,"href":"https:\/\/www.final-memory.org\/index.php?rest_route=\/wp\/v2\/posts\/2654\/revisions"}],"predecessor-version":[{"id":2657,"href":"https:\/\/www.final-memory.org\/index.php?rest_route=\/wp\/v2\/posts\/2654\/revisions\/2657"}],"wp:attachment":[{"href":"https:\/\/www.final-memory.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2654"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.final-memory.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2654"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.final-memory.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2654"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}