Ordner mergen mit mv

Status
Für weitere Antworten geschlossen.

Homie

Benutzer
Mitglied seit
28. Nov 2017
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Hallo und Guten Tag
Ich habe seit 6 Jahren verschiedene Diskstations, und bin kürzlich auf ein 918+ umgestiegen. Das aber nur am Rande.
Von Linux habe ich auch nur Basiswissen (kann mich einloggen, und den Ordner wechseln :)).

Jetzt zum Problem:
Ich möchte mit dem Aufgabenplaner einmal täglich alle Unterordner aus einem Verzeichnis (Netzwerkmount in dem tägliche Ordner mit Webcambildern liegen) in einen lokalen Ordner moven.
Normalerweise sollten dort nur 2 Unterordner liegen (Einer mit Datum Heute, und einer mit Datum Gestern).

Habe das ganze mit mv -f /Source /Destinaltion gemacht, und das funktioniert auch.
Aber leider nur beim ersten Mal.
Das Problem ist, dass der Ordner mit Datum Heute nach dem move wieder von der Webcam angelegt wird, damit sie die restlichen Bilder vom Tag dort ablegen kann.
Am nächsten Tag bekomme ich vom mv dann eine Fehlermeldung "mv: inter-device move failed: ‘/volume1/...’ to ‘/volume1/Backup/...’; unable to remove target: Directory not empty".

Hätte erwartet, dass der mv Befehl einfach die neuen Dateien in den bestehenden Ordner kopiert, statt den erst löschen zu wollen, um ihn neu anzulegen.
Wenn ich über die Weboberfläche verschieben anwähle, und die Option überschreiben setze, mergt er ja auch, ohne sich in irgendeiner Form zu beschweren.

Gibt es bei mv eine geheime Option, die ich noch setzen kann (mv -h gibt ja nicht so viel her), oder gibt es eh einen besseren Ansatz.

Danke fürs lesen bis hierher :)
Homie
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
4
Punkte
78
Gibt mehrere Lösungen.

1. rsync
2. mv OrdnerA OrdnerB; rmdir OrdnerA
3. cp OrdnerA OrdnerB; rm OrdnerA
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.214
Punkte für Reaktionen
503
Punkte
174
Gibt es bei mv eine geheime Option, die ich noch setzen kann (mv -h gibt ja nicht so viel her), oder gibt es eh einen besseren Ansatz.

Ohne am Script etwas zu ändern, bliebe nur die Möglichkeit, den Aufruf auf Mitternacht, bzw. kurz danach zu setzen.
Nun sollte das Script alle Ordner älter als 'heute' moven.

Oder wie PsychoHH schon schrieb cp OrdnerA OrdnerB und anschliessend den OrdnerA löschen ...
 

Homie

Benutzer
Mitglied seit
28. Nov 2017
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Danke für die Hinweise.
Das mit dem mv funktioniert ja irgendwie nur so halb. Zumindest bekomme ich eben eine Fehlermedung, dass der Ordner nicht gelöscht werden kann.

Das mit dem älter als scheint mir interessant. Bin daraufhin auf den find Befehl gestoßen. Ist wohl genau das, was ich gesucht hab.
Dachte ich aber schon bei dem mv :).
Werde es morgen mal anpassen.
 

Homie

Benutzer
Mitglied seit
28. Nov 2017
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Hab es nicht hin bekommen.
Es wird nichts gemoved.

Was stimmt da nicht?
find /volume1/Spycat/sda1/IPCam/Hof/ -ctime +1 -exec mv -f {} /volume1/Backup/HofCamera_Pictures_Backup/ \;

Im Fehlereport steht aber auch nix drin.
 

hvkls

Benutzer
Mitglied seit
23. Dez 2012
Beiträge
463
Punkte für Reaktionen
0
Punkte
22
Zeig doch mal, was genau da ist.

ls -l /volume1/Spycat/sda1/IPCam/Hof/
ls -l /volume1/Backup/HofCamera_Pictures_Backup/
 

Homie

Benutzer
Mitglied seit
28. Nov 2017
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Zeig doch mal, was genau da ist.

ls -l /volume1/Spycat/sda1/IPCam/Hof/
ls -l /volume1/Backup/HofCamera_Pictures_Backup/

Wie schon geschrieben. Es liegen eben Ordner mit Bildern dort. Für jeden Tag legt die Camera einen Ordner an. Wird er während des Tages gelöscht, wird er von ihr beim nächsten Bild neu angelegt.

admin@DS918:/$ ls -l /volume1/Spycat/sda1/IPCam/Hof/
total 0
drwxrwxrwx 2 admin users 0 Dec 2 23:47 2017_12_02-2017_12_02
drwxrwxrwx 2 admin users 0 Dec 3 16:25 2017_12_03-2017_12_03
admin@DS918:/$ ls -l /volume1/Backup/HofCamera_Pictures_Backup/
total 0
drwxrwxrwx+ 1 admin users 86184 Nov 1 23:47 2017_11_01-2017_11_01
drwxrwxrwx+ 1 admin users 99288 Nov 2 23:24 2017_11_02-2017_11_02
drwxrwxrwx+ 1 admin users 123232 Nov 3 23:40 2017_11_03-2017_11_03
drwxrwxrwx+ 1 admin users 404128 Nov 4 23:29 2017_11_04-2017_11_04
drwxrwxrwx+ 1 admin users 102144 Nov 5 22:31 2017_11_05-2017_11_05
drwxrwxrwx+ 1 admin users 174648 Nov 6 23:04 2017_11_06-2017_11_06
drwxrwxrwx+ 1 admin users 96216 Nov 7 23:15 2017_11_07-2017_11_07
drwxrwxrwx+ 1 admin users 193568 Nov 8 23:57 2017_11_08-2017_11_08
drwxrwxrwx+ 1 admin users 256096 Nov 9 23:51 2017_11_09-2017_11_09
drwxrwxrwx+ 1 admin users 206448 Nov 10 23:41 2017_11_10-2017_11_10
drwxrwxrwx+ 1 admin users 143752 Nov 11 23:50 2017_11_11-2017_11_11
drwxrwxrwx+ 1 admin users 117648 Nov 12 23:35 2017_11_12-2017_11_12
drwxrwxrwx+ 1 admin users 313328 Nov 13 23:55 2017_11_13-2017_11_13
drwxrwxrwx+ 1 admin users 2360304 Nov 16 18:49 2017_11_14-2017_11_14
drwxrwxrwx+ 1 admin users 2123304 Nov 16 19:45 2017_11_15-2017_11_15
drwxrwxrwx+ 1 admin users 177840 Nov 18 18:02 2017_11_16-2017_11_16
drwxrwxrwx+ 1 admin users 159368 Nov 18 18:01 2017_11_17-2017_11_17
drwxrwxrwx+ 1 admin users 121744 Nov 18 23:58 2017_11_18-2017_11_18
drwxrwxrwx+ 1 admin users 101232 Nov 19 23:46 2017_11_19-2017_11_19
drwxrwxrwx+ 1 admin users 152016 Nov 20 23:27 2017_11_20-2017_11_20
drwxrwxrwx+ 1 admin users 139536 Nov 21 23:19 2017_11_21-2017_11_21
drwxrwxrwx+ 1 admin users 112456 Nov 22 23:58 2017_11_22-2017_11_22
drwxrwxrwx+ 1 thomas users 151388 Nov 24 11:01 2017_11_23-2017_11_23
drwxrwxrwx+ 1 admin users 185304 Nov 24 23:56 2017_11_24-2017_11_24
drwxrwxrwx+ 1 admin users 156464 Nov 25 23:51 2017_11_25-2017_11_25
drwxrwxrwx+ 1 admin users 115704 Nov 26 23:04 2017_11_26-2017_11_26
drwxrwxrwx+ 1 admin users 205712 Nov 28 09:52 2017_11_27-2017_11_27
drwxrwxrwx 1 admin users 214488 Nov 29 14:05 2017_11_28-2017_11_28
drwxrwxrwx 1 admin users 142896 Nov 29 23:24 2017_11_29-2017_11_29
drwxrwxrwx 1 admin users 95816 Nov 30 22:03 2017_11_30-2017_11_30
drwxrwxrwx 1 admin users 153672 Dec 2 17:42 2017_12_01-2017_12_01
drwxrwxrwx 1 admin users 31576 Dec 2 10:58 2017_12_02-2017_12_02
drwxrwxrwx 1 admin users 9576 Dec 3 06:20 2017_12_03-2017_12_03
 

hvkls

Benutzer
Mitglied seit
23. Dez 2012
Beiträge
463
Punkte für Reaktionen
0
Punkte
22
Probier es doch mal mit mtime:

/usr/bin/find /volume1/Spycat/sda1/IPCam/Hof/ -maxdepth 1 -type d -mtime +1 -exec /usr/syno/bin/rsync --delete-after {} /volume1/Backup/HofCamera_Pictures_Backup/ \;

Wenn das wie gewünscht dupliziert, kannst du den Löschbefehl für die Quelle mitgeben:

/usr/bin/find /volume1/Spycat/sda1/IPCam/Hof/ -maxdepth 1 -type d -mtime +1 -exec /usr/syno/bin/rsync --remove-source-files --delete-after {} /volume1/Backup/HofCamera_Pictures_Backup/ \;
 
Zuletzt bearbeitet:

Homie

Benutzer
Mitglied seit
28. Nov 2017
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Danke für den weiteren Hinweis.
Konnte mich die Woche über nicht mit der Diskstation beschäfigen. Arbeit ist dazwischengekommen :-(.
Ich habe jetzt erstmal den normalen mv vom Anfang aktiviert, und die Ausfürhung wie empfohlen auf 0:00 gesetzt.
Bis jetzt funktioniert es. Könnte natürlich vorkommen, dass genau Mitternacht schon ein File für den neuen Tag geschrieben werden soll. Dann wird es wohl aufgrund der Abweichungen der Uhren zu Problemen kommen.
Ich lass es mal auf mich zu kommen.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat