硬盘上的数据为 10GB。要知道,每天硬盘上的数据平均会增加 5%。那么,在第 0 天执行 0 级(完整)备份、在第 5 天执行 1 级备份、在第 6 天执行 2 级备份,分别需要多少存储空间?我认为:完整备份 = 10GB 1 级备份 = 10 * 25% = 2.5GB 2 级备份 = ??? 谢谢!
答案1
如果我理解正确的话:
驱动器上的数据每天增加 5%。
第 1 天,数据大小为 10 GB:
10*0.05 = 0.5 GB increase
但是第二天的数据大小为 10.5 GB:
10.5*0.05 = 0.525 GB increase
对于每天 5% 的增长,您可以使用复利公式来计算驱动器上数据的大小。
For 5 days at 5% (level one):
__________________
| P = 10 GB |
| |
| r = 5% = 0.05 |
| |
| n = 1 day |
| |
| t = 5 days |
|________________|
since n = 1, n cancels out so the formula is:
A = P( 1 + r )ᵗ
A = 10( 1 + 0.05 )⁵
A = 10( 1.05 )⁵
A = 10( 1.27628156 )
A ≈ 12.76 GB
在第 1 级时大约会多出 2.76 GB,而不是 2.5 GB。
根据您的问题,2 级备份应该是 6 天而不是 5 天,因此请使用公式并相应地更改值。
注意:由于 n = 1 天,该值被抵消,因此它不用于最终计算,因为 1 乘以一个数字就是这个数字,1 除以一个数字也是同一个数字。
在终端中,您可以使用该bc
命令来计算5天后驱动器上的数据大小(级别1):
echo "10*1.05^5" | bc -l
您还可以创建一个脚本来计算 n 天的值:
#!/bin/bash
# script to calculate the size of 10 GB of data that increases in size by 5% each day
echo "10*1.05^$@" | bc -l
例如,如果脚本的名称是“scriptname”,则您可以使用以下命令计算 6 天后驱动器上的数据大小:
./scriptname 6