Seite 2 von 2

Re: robuster Weg Dateien und Verzeichnisse zu kopieren

Verfasst: Montag 17. August 2020, 15:55
von Sirius3
Bisher hast du dich immer davor gedrückt, deine Anforderungen aufzuschreiben. Aber ohne die zu kennen, kann man dir auch nicht helfen.

Re: robuster Weg Dateien und Verzeichnisse zu kopieren

Verfasst: Montag 17. August 2020, 16:38
von M.Miehtke
@ sparrow @Sirius3
Ziel:
Backup von ein paar Dateien und Ordner aus FireFox Profilen mit Hilfe von Python machen

Randbedingungen:
laufen auf Linux MacOS Windows
keine Betriebssystem -versions spezifischen Zusätze/Programme - nur Python
möglichst Filesystem unabhängig
Chronjob fähig
commadline interface
open source
funktioniert immer :D

Wenn ich wissen wollte, wie ich shutil für einen bestimmten Fall ans laufen kriege,
dann würde ich ja danach fragen.

Re: robuster Weg Dateien und Verzeichnisse zu kopieren

Verfasst: Montag 17. August 2020, 16:50
von sparrow
Ich sehe da überhaupt gar nichts, warum das nicht mit shutil.copytree funktionieren sollte.
Wie gesagt, benenn das Zielverzeichnis um, falls es exisitiert und lösche es nach dem erfolgreichen Kopieren oder benenn es wieder zurück.
Die 6 oder 7 Zeilen Code stehen in gar keinem Verhältnis zu der Zeit, die du hier in eine sinnlose Suche investierst.

Re: robuster Weg Dateien und Verzeichnisse zu kopieren

Verfasst: Montag 17. August 2020, 17:22
von M.Miehtke
@ sparrow
dann zeig mal nen Beispiel: Backup auf USB Stick
kopiert wird unter Linux von ext4 nach Fat32
also von mit unix Attributen zu simulieren (mount) Attributen

wenn das alles so einfach ist die 6 bis 7 Zeile Code kannst Du ja schnell mal Posten,

keine Angst ich kenn die Antwort schon
hast … nicht
kannst .. .nicht
willst .. nicht
machst nicht meine Arbeit

Re: robuster Weg Dateien und Verzeichnisse zu kopieren

Verfasst: Montag 17. August 2020, 18:34
von sparrow
Na, auf die Art kommst du bestimmt gut durch das Leben.
Vielleicht solltest du mal versuchen dein Problem in Worte zu fassen, denn Dateien auf eine USB-Stick zu kopieren ist nun wirklich kein Hexenwerk:

Code: Alles auswählen

sparrow@sparrow-VirtualBox:/tmp$ mount | grep vfat
/dev/sdb1 on /media/sparrow/MULTIBOOT type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
sparrow@sparrow-VirtualBox:/tmp$ ls /media/sparrow/MULTIBOOT/test_
ls: Zugriff auf '/media/sparrow/MULTIBOOT/test_' nicht möglich: Datei oder Verzeichnis nicht gefunden
sparrow@sparrow-VirtualBox:/tmp$ cat test.py
import shutil

shutil.copytree("/home/sparrow/.local/share", "/media/sparrow/MULTIBOOT/test_")


sparrow@sparrow-VirtualBox:/tmp$ python3 test.py
sparrow@sparrow-VirtualBox:/tmp$ ls /media/sparrow/MULTIBOOT/test_
baloo              kate     konsole   nano             sddm          user-places.xbel
dolphin            kded5    kscreen   RecentDocuments  thumbnail.so  user-places.xbel.bak
kactivitymanagerd  klipper  kxmlgui5  remoteview       Trash         user-places.xbel.tbcache
sparrow@sparrow-VirtualBox:/tmp$ 
Das brauchte jetzt genau eine Zeile Code.
Und wo liegt nun tatsächlich dein Problem?

Re: robuster Weg Dateien und Verzeichnisse zu kopieren

Verfasst: Montag 17. August 2020, 18:55
von M.Miehtke
@ sparrow
na wenn Du die Problematik jetzt noch nicht erkannt hast, dann kann man Dir nicht helfen.

Aber in gutes hat die Rumgeeiere .
Zu kopieren ist der falsche Lösungsansatz.
Arciv mit tarfile Module erstellen ist der bessere Weg.

Re: robuster Weg Dateien und Verzeichnisse zu kopieren

Verfasst: Montag 17. August 2020, 18:59
von sparrow
Na, du hast gesagt, du willst Dateien auf einen USB-Stick mit FAT-Dateisystem kopieren. Das geht halt _einfach so_.
Da muss man auch keine Ausnahmen behandeln. Es geht halt einfach, wenn das Verzeichnis nicht da ist.

Das Problem ist nicht, das wir dein Problem nicht verstehen. Das Problem ist, dass du das schlicht nicht kommunizierst.

Re: robuster Weg Dateien und Verzeichnisse zu kopieren

Verfasst: Samstag 22. August 2020, 11:17
von DeaD_EyE
M.Miehtke hat geschrieben: Montag 17. August 2020, 18:55 @ sparrow
na wenn Du die Problematik jetzt noch nicht erkannt hast, dann kann man Dir nicht helfen.

Aber in gutes hat die Rumgeeiere .
Zu kopieren ist der falsche Lösungsansatz.
Arciv mit tarfile Module erstellen ist der bessere Weg.
Willst Du uns mit aller Gewalt verarschen?!
Das ist erst gemeint.

Erst kommst Du mit einem Schnipsel von Stackoverflow, wo die LÖSUNG bereits steht und weiter unten angemerkt wird, dass man die hässliche Übergangslösung ab Python 3.8 nicht mehr benötigt.
Dann sind hier funktionierende Beispiele gepostet worden. Ich habe selbst eins gepostet und auch vorher getestet.
Dann gefiel Dir die Antwort nicht und erzählst was von unterschiedlichen Dateisystemen.
Als man Dir gezeigt hat, dass Du Blödsinn erzählst, kommst Du mit dem nächsten Knaller um die Ecke.

Wie wir mit Python Dateien in Archive packen, ist uns bekannt und kostet vielleicht 5 Minuten Dokumentation lesen, wenn man nicht alles im Kopf hat.
Aber wieso sollen wir uns sinnlos mit irgendwas beschäftigen, wenn Du nicht nur alles besser weißt, sondern auch besser kannst.


Dann mach einfach, aber hör auf uns irgendwas zu unterstellen.


PS: Ich bin auch nicht immer mit jedem einer Meinung. Aber wir diskutieren das auf technischer Ebene aus und sind nicht hinterher beleidigt, wenn der andere eine bessere/einfachere Lösung hat.
So ist das nun mal, wenn man nicht ständig seine Schwanzlänge vergleicht. Ich bin froh darüber andere Ideen zu verinnerlichen oder auch mal gesagt zu bekommen, dass XY einfach Bullshit ist + technische Begründung usw...