在日常的文件管理工作中,我们常常需要将本地文件与云端存储进行同步,以确保数据的安全备份和便捷访问。阿里云对象存储(OSS)是一款稳定可靠的云存储服务,能够满足我们对于文件存储和管理的需求。本文为您介绍如何通过配置定时任务,将本地文件自动同步至 OSS ,让您的文件管理更加高效便捷。
操作场景
某文件夹“folder”内的文件每天都会有增删改操作,需要定时将该文件夹同步至 OSS 上。并且为了提高传输效率,避免传输大量不必要的旧文件,希望只上传在一定时间段内有更新或创建的新文件。
通过使用基于文件时间过滤,例如 --max-age ,根据实际需求筛选出特定时间段内的文件进行传输,提高文件传输效率,实现精准的文件同步备份。
通过使用目的过滤参数,例如--update/-u,排除已同步的文件,从而显著提高文件同步的效率,减少不必要的重复操作和资源消耗。
前提条件
配置步骤
Linux系统
使用Cron定时任务执行上传命令
打开终端并输入命令。
crontab -e
添加定时任务。用于在每天的凌晨3点上传/path/folder路径下7 天内更新或新建的文件。
0 3 * * * ossutil cp /path/folder oss://your-bucket/path/a -r -f -u --max-age 7d
使用Cron定时任务执行脚本
创建Shell脚本文件upload.sh,并添加以下内容。
#!/bin/bash ossutil cp /path/folder oss://your-bucket/path/a -r -f -u --max-age 7d
添加定时任务。用于在每天的凌晨3点执行脚本,上传/path/folder路径下7 天内更新或新建的文件。
0 3 * * * /path/to/upload.sh
Windows系统
创建并编辑上传脚本。
创建批处理文件,例如 upload_to_oss.bat,并添加以下内容。
cd /d "C:\ossutil" ossutil cp "C:\local\folder" "oss://your-bucket/folder" -r -u -f
设置任务计划程序。
搜索并打开任务计划程序应用程序。
在左侧窗格选择任务计划程序库,然后点击创建基本任务链接。
按照向导的指示,设置任务的名称、触发器(选择要执行任务的时间和频率)以及操作(选择要运行的程序或脚本,并指定参数)。
在操作中选择启动程序,然后浏览并选择之前创建的批处理文件(.bat 文件)。
测试任务。
双击运行之前创建的批处理文件(.bat 文件)。
登录阿里云官网打开对象存储OSS控制台,查看脚本中上传至OSS指定路径下的文件是否更新。
成功更新后,该任务将在指定的时间自动运行脚本,执行ossutil上传操作。