我想计算btrfs send
流的大小以采取适当的行动。
现在,我可以使用以下代码获取大小:
exec 5>&1
size=$(btrfs send -v -p $ref_snapshot $src | pv -f 2>&1 > /dev/null | tee >(cat - >&5) )
echo "Calculated size is: $(echo $size | awk '{print $1}')"
Run Code Online (Sandbox Code Playgroud)
问题是这个过程花费的时间太长(例如 119GiB 需要 32 分钟),所以它不能被认为是有用的。
有什么方法可以更快地获得流大小(或近似估计)?