filevault:管理哈希目录树和文件

filevault的Python项目详细描述


文件保险库

filevault是一个类,用于管理文件系统上文件的哈希目录树。

保险库将:

  • 创建自定义深度的哈希目录树
  • 展开文件以在遍历树时保持cli快照
  • 扩展到数十万个文件
  • 混淆目录路径和文件名

如何安装

设置工具:

easy_install filevault

管道:

pip install filevault

如何使用

如何创建默认的Vault对象:

from filevault import Vault

v = Vault()

您可以(也应该)自定义Vault实例。以下是参数:

拱顶路径
应该在哪里创建树?默认为PWD中的“保险库”。
深度
这棵树应该长到多深?默认为3个目录深度。
为唯一且更安全的树添加自定义salt,默认为“changme”

另一个自定义示例:

from filevault import Vault

v = Vault( vaultpath="/tmp/for-test", depth=2, salt="sugar" )

现在我们有了一个名为v的vault对象,我们可以查看它的两种方法:

创建文件名(seed,ext='',absolute=false)
创建一个包含输入的有效保险库文件名。可选扩展。 默认情况下,从VaultPath的相对路径,除非绝对值为true。
创建随机文件名(ext='',absolute=false)
创建包含随机输入的有效保险库文件名。可选扩展。 默认情况下,从VaultPath的相对路径,除非绝对值为true。

下面是一个完整的示例:

# import Vault class
from filevault import Vault

# create vault object named v, with custom path, depth, and salt
v = Vault( vaultpath="/tmp/for-test", depth=2, salt="sugar" )

# print a valid vault filename with extension
print v.create_filename( "my-first-file", ".png" )

# result:
# 3/9/3993817d4f9b3867c6db29b23c9d2ff9bb8a87d89426002adbb6ed34289d9e32.png

print v.create_filename( "my-first-file", ".png" )

# Same result:
# 3/9/3993817d4f9b3867c6db29b23c9d2ff9bb8a87d89426002adbb6ed34289d9e32.png

# print a valid vault absolute filename with extension
print v.create_filename( "my-first-file", ".png", absolute=True )

# result:
# /tmp/for-test/3/9/3993817d4f9b3867c6db29b23c9d2ff9bb8a87d89426002adbb6ed34289d9e32.png


# print a random valid vault filename without extension
v.create_random_filename()

# result:
# 6/1/6169d6ee0ac0bc63ab667fb94d9cc747df0c03596ac43e24a51b3517d74bdc42

我该怎么感谢你?

查看我的webpage to screenshot service并给我一些反馈、提示或建议。每一点帮助都很重要。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何向xsi:nil元素添加另一个属性?   Java抽象泛型方法,使用具体类型实现通配符   java使用pcap4j截断pcap文件   当我放置字母a、b和c时,java中的异常预期会下降   java设置活动对话框不可取消   接口类型变量上的Java克隆   使用Java或BouncyCastle对CSR(证书签名请求)进行安全解码/读取   java调用SavingsAccount对象上的函数并打印结果   java如何在Android应用程序上显示地图上的兴趣点(POI)并与之交互?   如果在JavaFX中的ResultSet中未找到任何内容,则显示java警报   java我将springboot和@component与@scheduled一起使用,它每12小时锁定一次   ApachePOI如何使用java删除包含字符串的word表的行   java如果对象(x,y)靠近其他对象(x,y)   从未对JMSException调用java JMS CachingConnectionFactory OneException方法   javascript使用java将HTML页面转换为MS word