我想压缩一个文件夹并从 Ubuntu shell 上传到我的 dropbox。我打算将其用作备份解决方案,因此每天运行并替换旧文件也不错。如果 dropbox 不允许这样做,您认为其他哪些云服务可以工作?
答案1
压缩和移动文件
以下操作将把你的主文件夹中的目录压缩foo
为一个名为的文件backup.zip
,该文件也将存储在你的主文件夹中。
zip -r ~/backup.zip ~/foo
现在,您要做的就是将该文件移动到您的 Dropbox:
mv ~/backup.zip ~/Dropbox/
如果备份文件已经存在,mv
将会覆盖它而不提示您,因此请注意这一点。
自动化
您可以将其放在脚本文件中,也许调用它backup.sh
并将其存储在您的主文件夹中。
#!/bin/bash
zip -r ~/backup.zip ~/foo
mv ~/backup.zip ~/Dropbox/
就是这样。如果您更愿意保留旧版本,可以通过执行以下命令来为创建的文件添加时间戳date
:
#!/bin/bash
d=$(date +"%Y-%m-%d") # => this returns 2012-03-25, for example
zip -r ~/backup-$d.zip ~/foo
mv ~/backup-$d.zip ~/Dropbox/
现在,在命令行中,使该文件可执行:
chmod +x ~/backup.sh
要将其添加到计划中,您唯一需要做的就是编辑您的crontab
:
EDITOR=nano;crontab -e
添加以下行:
0 15 * * * ~/backup.sh >/dev/null
按Ctrl-O
Enter 保存。您的备份现在将在每天 15:00 运行。有关更多选项,请查看 Wikipedia 上的文章克罗恩。