软链接功能用于快速访问存储空间(Bucket)内的常用文件(Object)。通过create-symlink创建软链接后,您可以通过软链接文件快速打开源文件,类似于Windows的快捷方式。
注意事项
要创建软链接,您必须具有
oss:PutObject
权限。具体操作,请参见为RAM用户授权自定义的权限策略。
从ossutil 1.6.16版本开始,命令行中Binary名称支持直接使用ossutil,您无需根据系统刷新Binary名称。如果您的ossutil版本低于1.6.16,则需要根据系统刷新Binary名称。更多信息,请参见命令行工具ossutil命令参考。
当您在OSS ON云盒中使用该命令时:
将配置文件中的Endpoint替换为云盒Endpoint。更多信息,请参见云盒Endpoint。
在本文已有示例的基础上添加--sign-version、--region以及--cloudbox-id选项。关于这三个选项的具体用法,请参见通用选项。
命令格式
ossutil create-symlink cloud_url target_object
[--encoding-type <value>]
[--payer <value>]
参数及选项说明如下:
配置项 | 说明 |
cloud_url | 软链接文件所在Bucket的完整路径。 |
target_object | 软链接文件指向的目标Object所在Bucket的完整路径。软链接文件与目标Object必须属于同一个Bucket。 |
--encoding-type | 对 |
--payer | 请求的支付方式。如果希望访问指定路径下的资源产生的流量、请求次数等费用由请求者支付,请将此选项的值设置为requester。 |
使用示例
使用此命令创建软链接时不会检查目标文件是否存在。如果目标文件存在,通过创建的软链接文件可直接访问目标文件。如果目标文件不存在,通过创建的软链接文件无法找到目标文件。当您无法判断目标文件是否存在时,请通过ls(列举)命令获取目标Bucket内包含的所有文件。
为已存在的目标文件创建软链接文件示例如下:
如果新添加的软链接文件名称与已有的软链接文件重名,则新添加的软链接文件将覆盖已有的软链接文件。
为目标存储空间examplebucket根目录下的exampleobject.jpg文件创建名为test.jpg的软链接文件,并将软链接文件保存至该Bucket的根目录。
ossutil create-symlink oss://examplebucket/test.jpg oss://examplebucket/exampleobject.jpg
在开启请求者付费模式下,为目标存储空间examplebucket根目录下的test.jpg文件创建名为example.jpg的软链接文件,并将软链接文件保存至该Bucket下的destfolder目录。
ossutil create-symlink oss://examplebucket/destfolder/example.jpg oss://examplebucket/test.jpg --payer requester
以下输出结果表明已为目标文件成功创建软链接文件。
0.106744(s) elapsed
软链接文件创建成功后,您可以通过read-symlink(读取软链接)或stat(查看Bucket和Object信息)命令获取软链接文件相关信息,例如ETag值、文件最后更新时间等。
通用选项
当您需要通过命令行工具ossutil切换至另一个地域的Bucket时,可以通过-e选项指定该Bucket所属的Endpoint。当您需要通过命令行工具ossutil切换至另一个阿里云账号下的Bucket时,可以通过-i选项指定该账号的AccessKey ID,并通过-k选项指定该账号的AccessKey Secret。
例如,您需要为另一个阿里云账号下,华东2(上海)地域下目标存储空间testbucket下的exampleobject.png文件创建名为testobject.png的软链接,命令如下:
ossutil create-symlink oss://testbucket/testobject.png oss://testbucket/exampleobject.png -e oss-cn-shanghai.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA**** -k 67DLVBkH7EamOjy2W5RVAHUY9H****
关于此命令的其他通用选项的更多信息,请参见通用选项。