2013-05-09 7 views
6

Pythonで特定の "パス"のパーティションのタイプを教えてくれるライブラリや関数はありますか?"パス"がFAT32パーティションにあるかどうかはどのように知りますか?

どのように他の方法で達成できますか?

ありがとうございます!

+0

[マウントポイントを見つける方法は?](http://stackoverflow.com/questions/4453602/how-to-find-the-mountpoint-a-file-resides-on) – hek2mgl

+2

それは関連していますが、この質問には、元の質問にはなかった追加の要素(パーティションの種類を見つける)があります。感謝! –

答えて

3

How to find the file system type in pythonも関連すると思われます。 (タグは言及したように)あなたがLinuxを実行していて、あなただけのタイプ(使用を得ていない、タイプの存在を探していると仮定すると

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 

は、ここで私が思いついたものです同じコマンドを使用してsubprocess.check_output()の正規表現?)。

+0

ありがとう!出来た! –

1

私の以前の回答では、ウィンドウが必要だと思っていましたが、私は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%/
関連する問題