Seite 1 von 1

Textdatei auf beliebigen USB-Stick speichern

Verfasst: Donnerstag 10. Oktober 2013, 07:58
von Python1234
Hallo,

mein Programm erstellt eine Textdatei. Diese soll direkt auf einen USB-Stick gespeichert werden. Der Pfad des Sticks ist immer /media/"Name des USB-Sticks". Die Textdatei wird mit folgendem Befehl erzeugt:

Code: Alles auswählen

outfile = open('/media/"Name des USB-Sticks"/Test.txt','w')
Der Pfad in dem die Textdatei gespeichert werden soll, ändert sich jedoch, wenn man verschiedene USB-Sticks mit unterschiedlichem Namen in den USB-Port steckt.

Wie kann ich es realisieren, dass ich die Datei immer auf das eingesteckte Speichermedium speichere, ohne den Label-Namen des Speichermediums zu verwenden? Oder ist es möglich den Name des eingestickten Sticks auszulesen und als Variable zu deklarieren und so als Pfad anzugeben?

Vielen Dank im Voraus.

Re: Textdatei auf beliebigen USB-Stick speichern

Verfasst: Donnerstag 10. Oktober 2013, 08:42
von BlackJack
@Python1234: Du könntest alle Verzeichnisse in ``/media/`` durchgehen und testen ob dort ein Dateisystem gemountet ist. Die Frage ist dann was passieren soll wenn dort mehrere Medien eingebunden sind, also mehr als ein Stick, oder eine CD/DVD oder externe Festplatte.

Hier ist mal ein Test mit einem USB-Stick unter ``/media/spaceloop`` während ``/media/disk1`` ein Verzeichnis ist unter dem sonst eine externe Festplatte eingehängt ist, die momentan ausgeschaltet ist:

Code: Alles auswählen

In [2]: os.path.ismount('/media/disk1')
Out[2]: False

In [3]: os.path.ismount('/media/spaceloop')
Out[3]: True

Re: Textdatei auf beliebigen USB-Stick speichern

Verfasst: Donnerstag 10. Oktober 2013, 13:05
von Python1234
Ich will das Ganze für jeden xbeliebigen Stick und nicht für eine Auswahl an Sticks.

Die Datei soll auf jeden USB-Stick gespeichert werden egal wie sein Label ist. Es ist immer nur ein USB Stick eingesteckt, es muss also nicht zwischen verschiedenen Sticks unterschieden werden.

Re: Textdatei auf beliebigen USB-Stick speichern

Verfasst: Donnerstag 10. Oktober 2013, 13:22
von EyDu
BlackJack hat dir doch gesagt, wie du das generisch angehen kannst. Gehe einfach durch alle Ordner in ``/media``, schaue nach ob ein Dateisystem gemountet ist und wenn ja, dann versuchst du einfach zu schreiben.

Re: Textdatei auf beliebigen USB-Stick speichern

Verfasst: Donnerstag 10. Oktober 2013, 13:41
von BlackJack
@Python1234: Grundsätzlich ist das natürlich schon ein wenig unsicher zu behaupten da ist immer nur ein Stick angesteckt. Kann ja auch mal jemand etwas anderes anschliessen was dann dort gemounted wird. Auch Sachen wo man gar nicht unbedingt mit rechnet. Ich hatte zum Beispiel mal eine USB-Soundkarte angeschlossen die gleichzeitig einen (read-only) Massenspeicher zur Verfügung gestellt hat wo die Software für Windows vom Hersteller drauf war. Smartphones machen so etwas auch manchmal. Und Mediaplayer. Und wer weiss was sonst noch. :-)