Как найти путь для изменения имени каталога?

3

Я хочу получить доступ к следующему пути в Ubuntu в моем коде python:

~/.mozilla/firefox/dh4ytbdj.default/bookmarkbackups 

который содержит закладки Firefox

Проблема в том, что часть перед .default 'различна для каждого пользователя и машины. Есть ли способ, которым я могу указать общий путь для этого каталога и сделать python доступ к нему и получить желаемый файл?

И возможно ли реализовать '~' в коде python для доступа к текущему дому пользователя?

  • 0
    Я прошу прощения за это, спасибо
  • 2
    Нет проблем .. Я должен был изучить это тоже. Чем более читаемым будет пост, тем более вероятным будет ответ, как я узнал :)
Теги:
firefox

1 ответ

3
Лучший ответ
>>> import os
>>> os.path.expanduser('~/.mozilla/firefox/dh4ytbdj.default/bookmarkbackups')
'/home/username/.mozilla/firefox/dh4ytbdj.default/bookmarkbackups'

Для системного доступа к личным каталогам firefox (с достаточными правами) вы можете попробовать:

>>> import glob
>>> glob.glob('/home/*/.mozilla/firefox/*.default/bookmarkbackups')

Как отметил @NedBatchelder, это можно объединить в одну команду:

import os, glob
next(glob.iglob(os.path.expanduser('~/.mozilla/firefox/*.default/bookmarkbackups')))

который возвращает один (если существующий) путь.

  • 0
    Спасибо, это решает вещь '~', но не может получить доступ к какому-либо имени до '.default'
  • 0
    @ user1239277 - у вас работает решение подстановочного знака с glob ?
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню