简介
文件名格式化是腾讯云对象存储(Cloud Object Storage,COS)基于 云函数(Serverless Cloud Function,SCF) 为用户提供的云上文件重命名方案。当文件上传到对象存储时,可以自动按照您的命名规则为文件进行重命名,支持使用变量占位符替换已有的文件名。
注意事项
若您此前在对象存储控制台上为存储桶添加了文件名格式化规则,可以在 云函数控制台 上看到您所创建的文件名格式化函数,请不要删除该函数,否则可能导致您的规则不生效。
已上线云函数的地域均已支持文件名格式化,包括有广州、上海、北京、成都、中国香港、新加坡、孟买、多伦多、首尔、硅谷等,更多支持地域可查看 云函数产品文档。
如果在重命名的过程中出现报错,您可以单击所创建的函数右侧的查看日志,跳转到云函数控制台查看日志错误详情。
归档存储和深度归档存储类型文件不支持对文件名进行格式化,如您需要对此类型文件进行格式化名称,请先恢复后再进行,恢复操作请参见 恢复归档对象。
操作步骤
1. 登录 对象存储控制台。
2. 在左侧导航中,单击应用集成 > 拓展功能,找到文件名格式化。
3. 单击配置格式化规则,进入规则配置页面。
注意
4. 单击添加函数,并在弹出的窗口中,配置如下信息:


函数名称:作为函数的唯一标识名称,创建后不可修改。您可以在 云函数控制台 上查看该函数。
关联存储桶:待格式化名称的文件所在的 COS 存储桶。
事件类型:事件指触发云函数的操作。以上传操作为例,上传的方式可能是调用
PUT Object接口,也可能是调用POST Object接口,当选择事件为 Put方法创建时,只有通过PUT Object接口上传的文件会触发文件名格式化。触发条件:指文件上传到哪个路径时会触发云函数。如果选择指定范围,则仅当文件上传到指定前缀或后缀下时才会触发云函数;如果选择整个存储桶,则文件上传到存储桶任意位置均会触发。
SCF 授权:格式化文件名需要授权云函数从您的存储桶中读取对应文件,并修改已存在的文件名称,需要勾选该项为 SCF 服务进行授权。
5. 配置完成后,单击下一步,进入格式化规则的配置:


目标名称模板:您希望格式化名称的模板,支持使用默认变量作为模板参数,默认变脸的格式为
${变量名称},当前已支持默认变量如下:变量名称 | 含义 |
Bucket | 前面配置的关联存储桶名称 |
Region | 关联存储桶所在的地域 |
Key | 源文件在 COS 上的 Key 值,例如 abc/test.jpg |
InputName | 源文件的文件名(不带后缀),例如 test |
InputNameAndExt | 源文件的文件名(带后缀),例如 test.jpg |
InputPath | 源文件所在的目录,例如 test/ |
Ext | 源文件的后缀,例如 .jpg注意:该变量中已默认携带`.`,使用该变量作为文件名后缀时,无需再加`.` |
Year | 根据您选择的时区,表示该时区当前的年份 |
Month | 根据您选择的时区,表示该时区当前的月份 |
Day | 根据您选择的时区,表示该时区当前的日期 |
Hour | 根据您选择的时区,表示该时区当前的小时 |
Minute | 根据您选择的时区,表示该时区当前的分钟 |
Second | 根据您选择的时区,表示该时区当前的秒 |
CRC64 | 文件的 CRC64 值 |
MD5 | 文件的 MD5 值 |
SHA1 | 文件的 SHA1 值 |
SHA256 | 文件的 SHA256 值 |
是否删除源文件:您可以选择格式化名称后是否需要删除源文件,默认为否,即格式化名称后会另存为一个新的文件保存在存储桶中。
默认时区:请选择您所在的时区,名称模板中的默认时间变量将按照您所选的时区进行展示。例如您选择 UTC+08:00,则默认时间为东八区当前的年月日时分秒。
回调地址:您可以添加回调地址,当完成每个文件名的格式化操作后,系统将发送回调通知至该地址,例如 https://www.callback.com。
6. 添加配置后,单击确认,等待一段时间后,即可看到函数已添加完成。

您可以对新创建的函数进行如下操作:

单击日志,快速跳转到云函数控制台查看日志错误详情。
单击详情,查看您配置的格式化名称函数规则详情。
单击更多 > 编辑,修改文件名格式化规则。
单击更多 > 删除,删除不再需要的文件名格式化函数。