16 Jul
2009
16 Jul
'09
11:57
On Thu 16 Jul 2009 17:34:18 NZST +1200, David Haller wrote: > >> rsync -aved (...) ~/Documents/texte/*/*[odt|doc] /backup-server > [..] > >3. Es kann sein, dass Du die Quelle Quoten musst, weil die Wildcards > >schon von der Shell expandiert werden. Was sagt David dazu? > > Ich glaube nicht, daß rsync die selber expandiert. Und '*[odt|doc]' > kommt mir auch spanisch vor. Korrekt wäre: '*{odt,doc}'. Ehm, nein. rsync expandiert auch wildcards, rsync wildcards sind den shell wildcards ähnlich, aber es gibt wichtige Unterschiede. "/" Am Anfang verankert das im aktuellen Verzeichnis, Default ist jeden Pfadlosen Namen in jeder Ebene(!) zu vergleichen. Achtung bei --exclude damit! Ein "/" am Ende erkennt nur Verzeichnisse, keine Dateien. Für rsyncs .../**/... gibt es von der shell nichts Vergleichbares, bei regex müßte man schon nachdenken und es artet in Fummelei aus. Wenn ich mich recht erinnere, hatten zumindest ältere rsync-Versionen keine Muster-Alternativen. Also unbedingt rsync Handbuch lesen! Natürlich expandiert die shell alles, was nicht in Anführungszeichen steht. Wie immer halt. Damit kann man sich mit rsync --delete --exclude mine* a b c so wunderbar in den Fuß schießen! > Ansonsten hat die Shell keine Probleme damit */*.{odt,doc} zu > expandieren, bash expandiert {,} eben NICHT als wildcard, nur als Zeichenkette, was auch zu unangenehmen Überraschungen führen kann. Mit ein Grund warum ich für Interaktives bei tcsh geblieben bin. Volker -- Volker Kuhlmann is list0570 with the domain in header http://volker.dnsalias.net/ Please do not CC list postings to me. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org