<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Rekursiv on Michael’s Domain</title><link>https://jeltsch.org/de/tags/rekursiv/</link><description>Recent content in Rekursiv on Michael’s Domain</description><generator>Hugo</generator><language>de</language><copyright>Copyright © 2002 - 2026 Michael Jeltsch.</copyright><lastBuildDate>Fri, 24 Jul 2026 00:18:18 +0300</lastBuildDate><atom:link href="https://jeltsch.org/de/tags/rekursiv/index.xml" rel="self" type="application/rss+xml"/><item><title>Kopieren mit rsync</title><link>https://jeltsch.org/de/copy_with_rsync/</link><pubDate>Mon, 17 Feb 2020 00:00:00 +0000</pubDate><guid>https://jeltsch.org/de/copy_with_rsync/</guid><description>&lt;p&gt;Gründe, warum du (nicht immer, aber oft) rsync gegenüber cp bevorzugen solltest:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Unterbrochene Übertragungen fortsetzen
Wenn du eine große Datei kopierst und dein Computer oder die App abstürzt oder der Strom ausfällt, musst du mit cp von vorne beginnen. rsync kann aber genau dort weitermachen, wo es aufgehört hat, was bei großen Datenmengen eine enorme Zeitersparnis bedeuten kann.&lt;/li&gt;
&lt;li&gt;Effizienz (Delta-Übertragungsalgorithmus)
rsync ist intelligent konzipiert. Wenn du eine Datei kopierst, die am Zielort bereits vorhanden ist (z. B. bei der Aktualisierung eines Backups), kopiert rsync nur die Teile der Datei, die sich tatsächlich geändert haben (das „Delta“), anstatt die gesamte Datei zu überschreiben. cp hingegen kopiert jedes Mal die gesamte Datei.&lt;/li&gt;
&lt;li&gt;Fortschrittsanzeige in Echtzeit
rsync bietet eine hervorragende visuelle Rückmeldung. Mit dem Flag -P (oder &amp;ndash;progress) erhälst du einen Echtzeit-Fortschrittsbalken, der den Fertigstellungsgrad in Prozent, die Übertragungsgeschwindigkeit und die geschätzte verbleibende Zeit anzeigt. cp ist bekannt dafür, dass es keine Rückmeldung gibt, sodass du raten musst, ob der Vorgang noch läuft oder hängen geblieben ist. Das kannst du natürlich am Zielort nachprüfen. Anhand der sich ändernden Größe der bereits angekommenen Datei kannst du sehen ob überhaupt Fortschritte erzielt werden (ls -lh Dateiname oder du -hs Dateiname).&lt;/li&gt;
&lt;li&gt;Einfache Übertragungen übers Netz
rsync ist von Haus aus für den Einsatz über SSH ausgelegt. Du kannst damit Dateien direkt auf oder von einem Remote-Server kopieren – genauso einfach wie das Kopieren von Dateien auf deinem lokalen Rechner. cp kann dies nicht; um cp für einen Remote-Server zu verwenden, müssten du zunächst das Remote-Dateisystem lokal einbinden, was weitaus komplexer und fehleranfälliger ist.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Hier der vielleicht häufigste Fall, das Kopieren eines Verzeichnisses, inclusive des gesamten Inhalts:&lt;/p&gt;</description></item><item><title>Linux-Befehl „copy“ (cp)</title><link>https://jeltsch.org/de/linux_copy_cp/</link><pubDate>Wed, 17 Apr 2019 00:00:00 +0000</pubDate><guid>https://jeltsch.org/de/linux_copy_cp/</guid><description>&lt;p&gt;Um alle XML-Dateien aus einem Verzeichnis in ein anderes zu kopieren, ohne vorhandene Dateien mit demselben Namen zu überschreiben: &lt;code&gt;cp -vnpr /source/*.xml /destination&lt;/code&gt;&lt;/p&gt;</description></item><item><title>Dateiberechtigungen auf dem HTML-Server (rekursives chmod) unter Unterscheidung zwischen Dateien und Verzeichnissen</title><link>https://jeltsch.org/de/file_permissions_on_html_server_recursive_chmod_differentiating_between_files_and_directories/</link><pubDate>Sun, 12 Apr 2009 00:00:00 +0000</pubDate><guid>https://jeltsch.org/de/file_permissions_on_html_server_recursive_chmod_differentiating_between_files_and_directories/</guid><description>&lt;p&gt;Ich habe die Dateiberechtigungen im Stammverzeichnis meines HTML-Servers rekurektiv durcheinandergebracht. Um das Problem zu beheben, musste ich einige „fortgeschrittene“ chmod-Einstellungen vornehmen. Natürlich möchte ich Verzeichnisse und Dateien unterschiedlich behandeln. Mir ist keine bessere Lösung eingefallen als die folgende: &lt;code&gt;chmod -R u=rw-x,g=rw-x,o=r-wx *chmod -R a+X *&lt;/code&gt;&lt;/p&gt;</description></item><item><title>Rekursive Suche</title><link>https://jeltsch.org/de/recursive_grep/</link><pubDate>Thu, 05 Apr 2007 00:00:00 +0000</pubDate><guid>https://jeltsch.org/de/recursive_grep/</guid><description>&lt;p&gt;grep (ohne Berücksichtigung der Groß-/Kleinschreibung, rekursiv) grep bietet keine Möglichkeit, die Verzeichnisstruktur rekursiv zu durchsuchen. Der folgende Befehl durchsucht beispielsweise nur alle Dateien im aktuellen Verzeichnis: &lt;code&gt;grep bacteria *&lt;/code&gt; Um die Suche groß-/kleinschreibungsunabhängig zu machen, kann man das Flag -i verwenden: &lt;code&gt;grep -i bacteria *&lt;/code&gt;Wenn Sie jedoch eine rekursive Suche durchführen möchten, müssen Sie eine recht komplizierte Konstruktion aus UNIX-Befehlen verwenden, um dieses Ziel zu erreichen:&lt;code&gt;find ~/Mail -type f -exec grep 'bacteria' {} \; -print&lt;/code&gt;Dieser Befehl durchsucht rekursiv das Verzeichnis „Mail“ des aktuellen Benutzers und gibt alle Zeilen aus, die das Wort „bacteria“ enthalten.&lt;/p&gt;</description></item><item><title>Suchen und Ersetzen mit Perl</title><link>https://jeltsch.org/de/find_and_replace_with_perl/</link><pubDate>Sun, 28 Jan 2007 00:00:00 +0000</pubDate><guid>https://jeltsch.org/de/find_and_replace_with_perl/</guid><description>&lt;p&gt;Um die Zeichenfolge „jeltsch.blogspot.com“ durch die Zeichenfolge „mnm.no-ip.com/blog“ zu ersetzen, können Sie Perl verwenden: &lt;code&gt;perl -pi.bak -e 's|jeltsch.blogspot.com|mnm.no-ip.com\/blog|g' *.html&lt;/code&gt; Wenn Sie eine rekursive Ersetzung in einer Verzeichnisstruktur durchführen möchten, können Sie Folgendes versuchen:&lt;code&gt;perl -pi.bak -e 's|jeltsch.blogspot.com|mnm.no-ip.com\/blog|g' &lt;/code&gt;find jeltsch.org -name &amp;lsquo;*.html&amp;rsquo;``&lt;/p&gt;</description></item></channel></rss>