这是 .sh 脚本的一部分,我需要编辑它来制作一些备份并将其上传到 Dropbox,但我需要将该备份分割成更小的部分。
NOW=$(date +"%Y.%m.%d")
DESTFILE="$BACKUP_DST/$NOW.tgz"
# Backup mysql.
mysqldump -u $MYSQL_USER -h $MYSQL_SERVER -p$MYSQL_PASS --all-databases > "$NOW-Databases.sql"
tar cfz "$DESTFILE" "$NOW-Databases.sql"
然后是在 DropBox 上上传备份的功能....
dropboxUpload "$DESTFILE"
如何将 .tar 文件分割成较小的部分(例如 100 或 200mb 大小)并获取这些文件的名称和数量以使用 dropboxUpload 函数上传它们?
最佳答案
您可以使用split
。例如,这个:
split -b500k $DESTFILE ${DESTFILE}-
将把 $DESTFILE
分割成 500 KB 的片段,称为:
${DESTFILE}-aa
${DESTFILE}-ab
${DESTFILE}-ac
...
然后你可以用类似的东西循环它们:
for x in ${DESTFILE}-*
do
dropboxUpload $x
end
关于mysql - Bash 脚本 - 将 .TAR 文件分割成更小的部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7218577/