繁体   English   中英

在Python中,如何将资源分支设置为具有扩展名的文件以在Mac OS X下打开另一个应用程序

[英]In Python, how to set a resource fork to a file having an extension to open another application under Mac OS X

在 Mac OS X 下创建了一个扩展名为“.log”(或“.txt”)的文本文件后,我曾经在单击它时强制使用 Excel 而不是文本编辑器或控制台打开它,使用以下代码:

pathlog=os.path.join(d, "output.log")
log = open(pathlog, "w")
...
log.close()
os.system("SetFile -t 'XLS ' -c XCEL %s" % pathlog)

不幸的是,它曾经可以工作,但现在不再适用于较新的 Mac OS X(我使用 10.6):当我单击文件时,它会打开文本编辑器。 如果我用未知的文件扩展名(如“.logx”)命名它,它可以正常工作。 但我想保留“.log”扩展名,更重要的是,不要将其重命名为“.xls”或“.csv”。

在 Finder 的文件属性中,我必须选择“始终使用 Microsoft Excel.app 打开”,这将为该文件设置一个资源分支。

所以我的问题是:如何在 python 中编写“始终打开”,它将资源分支添加到文件中以强制使用与其扩展名暗示的不同的应用程序打开它?

谢谢你的帮助,埃里克。

TL; DR 您可能无法通过脚本轻松完成。

以下是从命令行执行此操作的方法。 Mac Creator 签名和文件类型

但。 Snow Leopard 更改了创建者和类型代码的工作方式,因此上述链接对于 10.6 和 10.7 已过时。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM