将OS X/Windows文件URL转换为目录路径
pathfix.p的Python项目详细描述
使用Linux?厌倦了接收带有指向X:\some%20path\on\remote%20share\spreadsheet.xls格式文件链接的电子邮件?那我们就可以帮忙了!
pathfix.py将不可用的路径作为输入,并将有用的路径作为输出输出。就这样。
它可以处理windows驱动器前缀(如果配置了的话),还可以对file://和smb://前缀进行排序。
应该与Python2.4-3.3和PyPy一起使用(可能更多,但这还只是测试的范围)。
安装
使用sudo pip install pathfix.py或sudo easy_install pathfix.py在系统范围内安装。 这将把名为pathfix.py的可执行文件放入$PATH。
配置
您需要创建一个config.ini文件,其中包含网络装载的根目录和任何驱动器映射(请参阅config.example.ini或下面的示例以开始)。
默认情况下,pathfix.py将检查$HOME/.config/pathfix/config.ini,因此最好将配置保留在那里。 如果是从源代码安装,也可以在源代码树中的pathfix.py旁边保留一个config.ini。
我们假设您的所有网络共享都安装在一个公共根目录下,格式为:
/<network mount root>/<host name>/<share name>
如果您是从源代码安装的,您可能会发现将pathfix.py链接到/usr/local/bin或PATH上的其他位置很有帮助,或者您只需python setup.py install就可以在路径上获得pathfix.py可执行文件。
用法
例如,如果您的config.ini:
[main]network_root=/media/network[drive_maps]x=host1:share1y=host2:share2
然后您可以这样做,例如:
% pathfix.py "X:\some%20path\on\remote%20share\spreadsheet.xls"/media/network/host1/share1/some path/on/remote share/spreadsheet.xls
可以在子外壳中用于修复其他应用程序的参数,例如:
% libreoffice "$(pathfix.py "X:\some%20path\on\remote%20share\spreadsheet.xls")"
开发
拉取请求是受欢迎的,但是请包含包含任何更新的测试用例。
除非您使用的是Python2.4-2.6或3.0-3.1,否则没有任何要求,在这种情况下(如果您是从源代码安装),您需要安装argparse:
pip install -r requirements.txt
要确保一切正常,请运行测试:
python setup.py test