Python: как получить доступ к путям Linux - PullRequest
3 голосов
/ 22 февраля 2010

Используя Python, как можно анализировать / получать доступ к файлам со специфическими для Linux функциями, такими как "~/.mozilla/firefox/*.default"? Я пробовал это, но это не работает.

Спасибо

Ответы [ 4 ]

9 голосов
/ 22 февраля 2010

Это

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

выдаст вам список всех файлов, оканчивающихся на ".default" в каталоге ~/.mozilla/firefox текущего пользователя, используя os.path.expanduser для расширения ~ в пути и glob.glob для соответствия шаблону файла *.default.

2 голосов
/ 22 февраля 2010

~ расширяется оболочкой, а не реальным путем. Поэтому вам придется перемещаться туда вручную.

import os

homeDir = os.environ['HOME']
f = open( homeDir + '/.mozilla/firefox/*.default' )
# ...
1 голос
/ 22 февраля 2010

Важно помнить:

  • использование тильды ~ расширяет домашний каталог в соответствии с ответом Поке
  • использование косой черты / - разделитель для каталогов linux / * nix
  • по умолчанию, * системы nix, такие как, например, linux, имеют подстановочный знак в оболочке, например, echo *.* вернет обратно все файлы, которые совпадают со звездочкой в ​​виде звездочки (согласно ответу Уилла Маккатчеона!)

Надеюсь, это поможет, С наилучшими пожеланиями, Том.

1 голос
/ 22 февраля 2010

http://docs.python.org/library/os.html Дает полную ссылку, если вы хотите изменить каталог или указать пути.

Например, вы можете указать относительные пути и получить доступ к определенным файлам.

Если вы хотите выполнять команды, http://docs.python.org/library/commands.html предоставляет удобные оболочки для функции os.popen ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...