2015-04-23 43 views
1

我需要通过bash脚本自动执行相同的命令。我在Mac上,每当我想看到我的数据库时,我都厌倦了做同样的事情。在bash脚本中的adb命令(从android复制sqlite到mac)

./adb shell run-as com.example.wow 

chmod 777 databases 

cd databases 

chmod 777 myDB.db 

exit 

cat /data/data/com.example.wow/databases/myDB.db > /sdcard/myDB.db 

exit 

./adb pull /sdcard/myDB.db /Users/ 
+0

这不一定是微不足道的,因为大多数此类命令的设备,而不是在主机上运行。你可以尝试将它们穿过外壳,但这并不总是奏效。您是否考虑过为应用程序的测试版本添加功能以导出数据库?或者只是在外部存储上维护它而不是测试版本? –

+0

感谢您的快速响应,但我没有很好地理解你,我可以说我只是试图以编程方式保存sqlite,但那对我没有用 –

回答

1

尝试类似的东西:

#! /bin/bash 

cat <<EOF | adb shell 
run-as com.example.wow 
chmod 777 databases 
cd databases 
chmod 777 myDB.db 
exit 
cat /data/data/com.example.wow/databases/myDB.db > /sdcard/myDB.db 
exit 
EOF 
adb pull /sdcard/myDB.db /Users/ 
+0

谢谢,它正在工作,对不起,但我可以不投票了你我没有足够的声望,但我会回来 –