Moin,

ich würde mal sagen, die Backticks werden vor / beim Starten des "find" ausgewertet, nicht wenn der "exec" läuft, darum immer die gleiche Ausgabe.

Lösung: Bastel Dir ein kleines Shell-Script, was die Ausgabe und den rsnapshot ausführt und ruf das per exec auf.


Tschüss,

Dirk

Am 03.11.2017 um 16:20 schrieb Norman Zimmer <mail@norman-zimmer.de>:

Hi,

ich hab da ein Lustiges Verhalten, vielleicht kann mir das jemand erklären oder eine Lösung sagen.

Ich will ein paar "rsnapshots" ausführen und mir dazu die jeweilige Startzeit des einzelnen rsnapshort ausgeben lassen.
Folgenden Befehl führe ich aus:

find /root/rsnaps/ -type f -name "rsnapshot-*.conf" -maxdepth 1 -exec echo `date` doing {} \; -exec rsnapshot -c {} daily \; ; sync;


Es funktionert alles, bis auf das `date`. Dieses gibt immer die Start-Uhrzeit des "find" aus.

Do 2. Nov 21:35:01 CET 2017 doing /root/rsnaps/rsnapshot-01.conf
Do 2. Nov 21:35:01 CET 2017 doing /root/rsnaps/rsnapshot-02.conf
Do 2. Nov 21:35:01 CET 2017 doing /root/rsnaps/rsnapshot-03.conf
... usw ...




Liegt nicht am "rsnapshot", funktioniert mit einem simpelen "sleep 1" ähnlich gut ;)

find /tmp -type f -exec echo `date` bla {} \; -exec sleep 1 \;
Fr 3. Nov 16:18:46 CET 2017 bla /tmp/xxx
Fr 3. Nov 16:18:46 CET 2017 bla /tmp/yyye
Fr 3. Nov 16:18:46 CET 2017 bla /tmp/zzz