Hallo, Am Tue, 17 Dec 2013, Alex Winzer schrieb:
On 17.12.2013 12:19, Roman Fietze wrote: Und wenn ich tar -C/srv/mysql/* -zPcvf/srv/mysql/.backup/test.tar.gz eingebe, dann erhalte ich wieder die absoluten Pfade und - was ich mir überhaupt nicht erklären kann - es fehlt ein Verzeichnis. Es gibt 5 Verzeichnisse (ohne .backup) und eines fehlt, was sonst immer mit gepackt wurde...
Du mußt dir klarmachen, daß die SHELL den * expandiert, _nicht_ tar. Du übergibst also an tar: tar -C/srv/mysql/ /srv/mysql/a /srv/mysql/b .. /srv/mysql/x \ -zPcvf /srv/mysql/.backup/test.tar.gz Das hättest du auch selber gemerkt, wenn du mal 'set -x' machen würdest und sehen würdest, wie du tar aufrufst.
Ich habe eine Methode gefunden, die ich aber nicht gern benutzen möchte. Man wechselt erst in das (Stamm)Verzeichnis /srv/mysql und ruft dann "tar -zPcvf /srv/mysql/.backup/test.tar.gz *" auf. Mich stört aber das "cd", denn es könnte ja auch mal schiefgehen, es ist unsauber etc. pp.
( cd /srv/mysql && tar -cvzf /srv/mysql/.backup/test.tar.gz * ; ) oder: tar -C /srv/mysql --exclude='./.*' -cvzf /srv/mysql/.backup/test.tar.gz . oder: find /srv/mysql -not -name '.*' -printf '%P\0' | \ tar -cvzf /srv/mysql/.backup/test.tar.gz --null -T- das läßt aber auch alle anderen .* aus die in Unterverzeichnissen liegen, dagegen hülfe dann z.B. find /srv/mysql/ -maxdepth 1 -not -regex '/srv/mysql/..*' -printf '%P\0' | \ tar -C /srv/mysql -cvzf /srv/mysql/.backup/test.tar.gz --null -T- bzw.: find /srv/mysql/ -type f -not -regex '/srv/mysql/..*' -printf '%P\0' | \ tar -C /srv/mysql -cvzf /srv/mysql/.backup/test.tar.gz --null -T- HTH, -dnh --
This needs quotes: use lib "/path/to/perl/modules"; Single or double quotes? Yes. -- Tad McClellan in comp.lang.perl.misc
Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org