在我的 plone 网站上,我在原型对象的文件字段中有数百个文件(pdf、doc、...)。导入过程中出了点问题,所有文件名都丢失了。问题是当有人想要打开文件时,由于缺少扩展名,浏览器并不总是建议用查看器打开它。
用户必须保存文件并添加扩展名才能打开它。
我可以编写一个 python 脚本来根据文件类型重命名所有带有扩展名的文件吗?
谢谢你。
在我的 plone 网站上,我在原型对象的文件字段中有数百个文件(pdf、doc、...)。导入过程中出了点问题,所有文件名都丢失了。问题是当有人想要打开文件时,由于缺少扩展名,浏览器并不总是建议用查看器打开它。
用户必须保存文件并添加扩展名才能打开它。
我可以编写一个 python 脚本来根据文件类型重命名所有带有扩展名的文件吗?
谢谢你。
http://plone.org/documentation/manual/plone-community-developer-documentation/content/rename
你有你需要的一切:)
重要的部分是这样的: parent.manage_renameObject(id, id + "-old")
您可以遍历子对象:
for i in context.objectIds():
obj = context[i]
context.manage_renameObject(i, i + ".pdf")
context 是您放置此脚本的文件夹,您拥有所有 pdf 的文件夹
标准库函数os.rename(src, dst)
可以解决问题。如果您知道扩展名应该是什么,这就是您所需要的(例如所有文件都是.pdf)。如果您有混合的 .doc、.pdf、.jpg、.xls 文件且没有扩展名,则需要检查文件内容以确定使用类似python-magic的正确扩展名。
import os
for fn in os.listdir(path='.'):
os.rename(fn, fn + ".pdf")