Найти корень сопоставленного тома (сетевое хранилище)

У меня есть сетевое хранилище, сопоставленное с /Volumes/Media, и я использую путь

/Volumes/Media/some/path/

в моей программе.

Я хочу иметь возможность определить, какая часть пути является подключенным диском, а какая - остальной. Что-то типа

os.path.split_volume('/Volumes/Media/some/path/') == '/Volumes/Media', 'some/path'

В настоящее время я работаю на Mac OS X, но мне кажется, что код обычно работает в среде Linux.


person Harald Nordgren    schedule 02.02.2017    source источник


Ответы (1)


Я думаю, что нашел ответ здесь: https://stackoverflow.com/a/4453715/4237316

def split_on_mount_point(path):
    mount_point = os.path.abspath(path)
    while not os.path.ismount(mount_point):
        mount_point = os.path.dirname(mount_point)

    return mount_point, os.path.relpath(path, mount_point)
person Harald Nordgren    schedule 03.02.2017