我正在使用以下命令来备份和 sql 文件:
tar -zcvf "$BACKUP_DST/$FILE_NAME.tgz" "$BACKUP_DST/$FILE_NAME.sql"
我想确保压缩文件不会大于 300mb,如果超过 300mb,就将其分成几个文件。
有什么想法吗?
答案1
我认为它没有tar
内置以任意大小进行拆分的功能(-M
对于多卷,它有此功能,但这依赖于目标媒体检测到空间不足的情况),但您可以做两件事:
- 以通常的方式生成单个 tar.gz 文件,然后使用
split
命令将其分成几部分(并将cat
它们重新合并在一起进行解压缩)。 使用達爾而不是 tar,因为它内置了拆分功能(以及 tar 没有的许多其他功能)。例如
$ dar -c "$BACKUPNAME" -g "$INPUTFILE.sql" -s300M -z