Python 克隆Mac OS X sparsebundle,使用shell脚本以每秒打印条带

Python 克隆Mac OS X sparsebundle,使用shell脚本以每秒打印条带,python,bash,sed,awk,Python,Bash,Sed,Awk,我正在使用Carbon Copy Cloner克隆我的硬盘,为Mountain Lion的全新安装做准备。这一过程似乎停留在从robottinosino.sparsebundle图像复制波段上 为了检查“某物”是否在移动,我使用了这个非常粗糙的CLI脚本: rsync -n -avv --delete /Users/robottinosino/robottinosino.sparsebundle/ /Volumes/AppleSSD_Clone_2012-09-03/Users/robottin

我正在使用Carbon Copy Cloner克隆我的硬盘,为Mountain Lion的全新安装做准备。这一过程似乎停留在从robottinosino.sparsebundle图像复制波段上

为了检查“某物”是否在移动,我使用了这个非常粗糙的CLI脚本:

rsync -n -avv --delete /Users/robottinosino/robottinosino.sparsebundle/ /Volumes/AppleSSD_Clone_2012-09-03/Users/robottinosino/robottinosino.sparsebundle/ | grep -v ' is uptodate$' | grep bands | wc -l
我模拟了一个
rsync
,但没有运行它(-n选项),我过滤掉确认波段相同的行,只选择描述仍需要复制的波段的行,并计算仍挂起的波段数

现在我想知道这个过程进展有多快,比如说“每秒有多少乐队”,因为这已经是几天了。。。如果它能在周末前完成,我不想阻止它。如果它不能在周末前完成,我最好现在就停止它,因为我无论如何都要中止

假设我将上面的hack定义为函数x(){…},并使用这个讨厌的函数来计算“带宽/秒”:

这会产生垃圾结果

问题是我在做整数除法吗?我可以在Bash中进行浮点/双除法运算吗?是否有一种更正常的方法使用shell脚本来实现这一点

我是初学者,别让我失望。提前感谢你的帮助

编辑:我试图绕过整数除法:

bands_per_second=$(echo "scale=10; $total_bands/$total_seconds" | bc);

但是,在Bash/shell脚本或其他一些脚本工具中,一定有更好的方法来计时吗?你知道,还有这么多(如果上面的计数正确的话,还有数千个)频带,我真的无法估计是否值得继续…

sparsebundle是你的FileVault加密主目录。如果您在尝试此操作时碰巧以该用户的身份登录,则可能会出错。如果这是您正在做的,您可以尝试以下方法:

1) 创建具有管理员访问权限但不加密的新用户。注销,以新用户身份登录,然后重试

2) 撤消filevault加密。这可能不是一个好主意,因为您将备份文件的未加密版本

3) 在运行备份之前,从OS X安装磁盘/USB驱动器而不是硬盘引导,这样硬盘就根本不用了


请注意,Mountain Lion支持全磁盘加密,这需要先关闭主目录加密。可能希望在安装完成后打开该功能。

我正在使用另一个名为
cloner
的用户,我使用visudo将其添加到sodoers列表中,以管理员身份运行Carbon Copy cloner。上面的命令都以sudo为前缀。。。但是总的来说还是不错的,谢谢。太好了,只是要确保基本面都被覆盖了。当然,我感谢你的贡献。你是在寻找进步吗?嗯,不是真的,至少从我从
页面所能理解的来看不是。话虽如此,我并不知道进步的存在,所以谢谢你指出。。
bands_per_second=$(echo "scale=10; $total_bands/$total_seconds" | bc);