我运行的是android 4.0.3设备,我想解压由以下命令创建的备份文件:
adb backup -f ~/data.ab -noapk app.package.name
上面的代码行在CMD (windows)中工作,我能够获得'~‘目录中的data.ab文件。
我不能做的是使用CMD扩展该文件。我尝试了以下两种方法。
dd if=data.ab bs=1 skip=24 | openssl zlib -d | tar -xvf -
dd if=data.ab bs=1 skip=24 | python -c "import zlib,sys;sys.stdout.write(zlib.decompress(sys.stdin.read()))" | tar -xvf -
我得到以下错误
我尝试通过CYGWIN提取它,但是,我也失败了。
我应该在哪里提取?我的命令提示符应该放在哪个目录?有什么见解吗?
发布于 2017-09-30 15:15:54
根据https://android.stackexchange.com/a/78183/239063,您可以在Linux中运行一行命令来添加适当的tar头文件来提取它。
( printf "\x1f\x8b\x08\x00\x00\x00\x00\x00" ; tail -c +25 backup.ab ) | tar xfvz -
将backup.ab替换为文件的路径。
发布于 2016-05-30 23:54:36
我也不得不打开一个.ab
-file,在寻找答案的过程中发现了这篇文章。我推荐的解决方案是Android Backup Extractor,这是一个适用于Windows、Linux和Mac的免费Java工具。
如果您遇到问题,请务必查看README。如果您的.ab
-file受密码保护,则可能需要下载更多文件。
用法: java -jar abe.jar -debug unpack password
示例:
假设您有一个没有密码保护的文件test.ab
,您使用的是Windows,并希望生成的.tar
-Archive名为test.tar
。那么你的命令应该是:
java.exe -jar abe.jar unpack test.ab test.tar ""
https://stackoverflow.com/questions/18533567
复制相似问题