2016-12-02 10 views
0

ファイルシステム内のディレクトリのみのmd5ハッシュ値を調べる方法はありますか?ディレクトリのハッシュ値

私はファイルのハッシュ値を望んでいません。私はディレクトリとサブディレクトリの値だけを必要とします。

答えて

0

私はそれはOSのpythonにだけに質問していないと思う:

>>> print(hashlib.md5(open('/home/tuls/dev', 'rb').read()).hexdigest()) 
... 
IsADirectoryError: [Errno 21] Is a directory: '/home/tuls/dev' 

と同じコンソールで

:ディレクトリは、データ、データを持っているファイルだけが含まれていないため

~$ md5sum /home/tuls/dev/ 
md5sum: /home/tuls/dev/: Is a directory 

それはです。見て:

~$ du -hs Documents/ 
2,9G Documents/ 

~$ ls -lhd Documents/ 
drwxr-xr-x 5 tuls tuls 4,0K гру 2 11:21 Documents/ 

あなたの質問への答えはあり2,9Gがディレクトリにありますが、ディレクトリの重量は4,0K(メタデータだけ)

ある - ディレクトリのMD5ハッシュは適用されません、ファイルのみのために。

+0

ディレクトリ/サブディレクトリのハッシュ値は計算できますが、ファイルは計算できませんか? –

0

実際にディレクトリのhashを計算する必要がある場合は、このディレクトリのパスのハッシュを計算するだけです。 (既に述べたように、ディレクトリは、特定のOSのファイルシステムのハッシュ可能オブジェクトではないかもしれない)

例えば:

my_dir_path = 'C:\some\dir\name' 
my_dir_hash = hash(my_dir_path) 

この溶液は、クロスプラットフォーム、高速かつ堅牢です。

関連する問題