2013-05-09 49 views
6

是否有任何庫或函數告訴我在python中的特定「路徑」的分區類型?如何知道「路徑」是否位於FAT32分區中?

或者我該如何用其他方法實現?

在此先感謝!

+0

可能重複的[如何找到文件所在的安裝點?](http://stackoverflow.com/questions/4453602/how-to-find-the-mountpoint-a-file- resides-on) – hek2mgl 2013-05-09 01:23:52

+2

它是相關的,但這個問題有一個額外的元素(找到分區類型),原來的問題沒有。 – 2013-05-09 01:39:51

回答

3

How to find the file system type in python似乎也有關。

這就是我想出了:

import subprocess 
import os 

def is_filesys_fat32(path): 

    try: 
     subprocess.check_call(['df', '--type=fat32', path], stdout=os.devnull) 
    except: 
     return False 

    return True 

假設你正在運行Linux(如標籤提到),那你只搜索類型的存在,沒有得到的類型(使用subprocess.check_output()上的正則表達式使用相同的命令?)。

+0

謝謝!有效! – 2013-05-09 18:18:54

1

好吧,在我之前的回答中,我認爲你需要Windows,但是,我相信我在Linux中找到了一種方法。

試試這個:

通過使用此命令df -T /users/f/foo/file.txt子,你可以得到你想要的結果。

import subprocess 
p = subprocess.Popen(["df -T %s"] % path, stdout=subprocess.PIPE) 
out, err = p.communicate() 

輸出示例:

Filesystem Type 1K-blocks  Used Available Use% Mounted on 
/dev/sda5  ext4 472439072 146088944 302351616 33%/
相關問題