it-swarm.com.de

Gerät mit Mountpunkt holen

gibt es eine möglichkeit den gerätenamen (/dev/sdx) mit dem gemounteten ordner zu bekommen? Ich meine, erhalten Sie das zugehörige Gerät in einem Bereitstellungspunkt mit dem bereitgestellten Ordner als Referenz, oder erstellen Sie ein python Wörterbuch mit dem mount points : devices ...

ich weiß, dass mount -l mir die Informationen zum eingebundenen Dateisystem geben kann, aber ich weiß nicht wirklich, wie ich es entfernen soll, um das Wörterbuch zu erstellen ...

irgendeine Hilfe?

Grüße...

3
Hairo

Dies hat nichts mit Ubuntu zu tun, aber hier sind Sie:

#!/usr/bin/env python

import subprocess

mounts = {}

for line in subprocess.check_output(['mount', '-l']).split('\n'):
    parts = line.split(' ')
    if len(parts) > 2:
        mounts[parts[2]] = parts[0]

print mounts
6
Sergey
mount | cut -f 1,3 -d ' '

Erläuterung: cut ist ein praktisches kleines Tool zum Teilen von Zeilen mit einem Trennzeichen (angegeben durch die Option -d) und zum Auswählen einiger Felder für die Ausgabe (unter Verwendung einer durch Kommas getrennten Argumentliste für die Option -f). Da die Ausgabe von mount regulär ist und durch Leerzeichen begrenzt wird, wird in der obigen Spalte die erste und dritte Spalte ausgegeben, wobei "on" und der Rest der Zeile weggelassen werden.

3
January

Warum nicht das Gio-Interface benutzen? Diese Lösungen gefallen mir besser, als einen bash-Befehl auszuführen und seine Ausgabe zu analysieren. Auf diese Weise können Sie Ausnahmen abfangen und haben mehr Kontrolle.

Hier ist ein kleines Beispiel:

>>> from gi.repository import Gio
>>> vm = Gio.VolumeMonitor.get()
>>> for v in vm.get_volumes():
...     print v.get_name()

Weitere interessante Methoden finden Sie in der Dokumentation.

GVolumeMonitor

GVolume

Gmount

3
Timo