2011-11-25 369 views
2

我试图创建一个脚本来简化与sqlite的数据检查。对我来说,这是相当麻烦的写:从脚本运行adb shell命令而不退出shell

adb shell 
sqlite /data/data/my.package.name/databases/mydatabse.db 

我要检查的东西在数据库(和数据库开发的开始阶段,这是经常),特别是因为TAB完成似乎不上工时间(至少对于我来说)。于是,我就写了一个脚本来自动打开数据库的我,但Android的文件中明确指出:

shell [<shellCommand>] - Issues a shell command in the target emulator/device 
         instance and then exits the remote shell. 

所以我想知道是否会有周围的一些方法,让我的壳将保持运行我可以使用sqlite3命令行程序。从here一点帮助,我能够创建运行特定数据库查询脚本,像这样(但我想保持sqlite的命令行程序运行):提前

#!/bin/bash 
adb shell sqlite3 /data/data/my.package.name/databases/mydatabse.db "select * from someTable" 

谢谢!

+0

分享一些关于android上可用的shell/s的信息。你使用bash还是??或者特定于android的东西?虽然有1.2K的关注者,但大概有一半是Windows用户。如果有android shell的特定名称,最好包含它。将鼠标悬停在每个标签上,查看关注者的数量。 12个追随者似乎是一个标签的浪费。祝你好运。 – shellter

回答

0

如何只使用命令亚行外壳

然后运行:sqlite的/data/data/my.package.name/databases/mydatabse.db

这将保持窗口打开,然后你只需要推动获得最后的命令。

-1

您可以尝试在adb命令周围添加引号,如提到的here

adb shell "sqlite /data/data/my.package.name/databases/mydatabse.db" 

确保您有权访问您的数据库(读/写)。

here有一个github代码发布倾销dbs。直接链接:https://github.com/Pixplicity/humpty-dumpty-android/blob/master/humpty.sh

+0

您应该引用链接的相关部分,并稍微解释一下。检查这个:http://stackoverflow.com/help/how-to-answer –