2012-07-02 68 views
3

我要訪問我的Python代碼在Ubuntu以下路徑:如何找到更改目錄名稱的路徑?

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

其中包含Firefox書籤

的問題是,之前的「.default」的部分是每一個用戶和機器不同。 有沒有一種方法可以指定該目錄的一般路徑,並使python訪問它並檢索所需的文件?

是否有可能在Python代碼中實現'~'來訪問當前用戶的家?

+0

我對此表示歉意,謝謝 – Shokry

+2

沒問題..我也必須學習。這個帖子的可讀性越高,回答就越有可能出現,因爲我已經發現了:) – Levon

回答

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'之前的任何名字 – Shokry

+0

@ user1239277 - 使用glob的通配符解決方案是否適合您? – eumiro

+2

不妨將兩者結合起來:'glob.glob(os.path.expanduser(「〜/ .mozilla/firefox/*。default/bla」))''。 –

相關問題