1.adb shell 命令
通过远程shell命令来控制模拟器/设备实例.
adb 提供了shell端,通过shell端你可以在模拟器或设备上运行各种命令。这些命令以2进制的形式保存在本地的模拟器或设备的文件系统中:
/system/bin/...
不管你是否完全进入到模拟器/设备的adb远程shell端,你都能 shell
命令来执行命令.
当没有完全进入到远程shell的时候,这样使用shell
命令来执行一条命令:
adb [-d|-e|-s {<serialNumber>}] shell <shellCommand>
在模拟器/设备中不用远程shell端时,这样使用shell
命 :
adb [-d|-e|-s {<serialNumber>}] shell
通过操作CTRL+D
或exit
就可以退出shell远程连接.
下面一些就将告诉你更多的关于shell命令的知识.
通过远程shell端运行sqllite3连接数据库
通过adb远程shell端,你可以通过Android软sqlite3 命令程序来管理数据库。sqlite3
工具包含了许多使用命令,比如:.dump
显示表的内容,.schema
可以显示出已经存在的表空间的SQL CREATE结果集。Sqlite3还允许你远程执行sql命令.
通过sqlite3
, 按照前几节的方法登陆模拟器的远程shell端,然后启动工具就可以使用sqlite3
命令。当sqlite3
启动以后,你还可以指定你想查看的数据库的完整路径。模拟器/设备实例会在文件夹中保存SQLite3数据库. /data/data/<package_name>/databases/
.
示例如下:
$ adb -s emulator-5554 shell# sqlite3 /data/data/com.example.google.rss.rssexample/databases/rssitems.db
SQLite version 3.3.12Enter ".help" for instructions.... enter commands, then quit...sqlite> .exit
当你启动sqlite3的时候,你就可以通过shell端发送 sqlite3
,命令了。用exit
或 CTRL+D
退出adb远程shell端.
PS. 如果同时连接多个设备或模拟器,执行上述命令时,会报“error: more than one device and emulator” ,这时需要加 -s 参数,例如:adb -s emulator-5554 shell
注:
1.”emulator-5554″是设备名称,可执行adb devices命令查看。
2.上述方法似乎只在模拟器上可以正常使用,在真机上,似乎没有权限。