我正在尝试使用sqlite创建一个简化数据检查的脚本。对我来说,写作非常麻烦:
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.
所以我想知道是否会有某种方法,所以我的shell将继续运行,我可以使用sqlite3命令行程序。在here的帮助下,我能够创建运行特定数据库查询的脚本,就像这样(但我想保持sqlite命令行程序运行):
#!/bin/bash
adb shell sqlite3 /data/data/my.package.name/databases/mydatabse.db "select * from someTable"
提前致谢!
答案 0 :(得分:1)
您可以尝试在adb命令周围添加引号,如提到的here。
adb shell "sqlite /data/data/my.package.name/databases/mydatabse.db"
确保您有权访问您的数据库(读/写)。
从here发布了一个用于转储dbs的github代码。直接链接:https://github.com/Pixplicity/humpty-dumpty-android/blob/master/humpty.sh
答案 1 :(得分:0)
如何使用命令adb shell
然后运行:sqlite /data/data/my.package.name/databases/mydatabse.db
这将使窗口保持打开状态,然后你只需要向上推即可获得最后一个命令。