当使用sqlite3的通过adb shell
箭头键,而不是将光标移动到期望的位置或召唤历史设施,以下是显示在屏幕上: ^[[A
^[[B
^[[C
^[[D
。
我使用的是Mac OS X和我试图码头和的iTerm终端仿真器。
是否有人知道如何解决这一问题?
当使用sqlite3的通过adb shell
箭头键,而不是将光标移动到期望的位置或召唤历史设施,以下是显示在屏幕上: ^[[A
^[[B
^[[C
^[[D
。
我使用的是Mac OS X和我试图码头和的iTerm终端仿真器。
是否有人知道如何解决这一问题?
为了让编辑和历史在控制台程序的输入,该程序必须与被链接readline
库。
在sqlite3
工具不支持readline的,但在Android上,readline的支持已被禁用。 (大概是因为的ReadLine只在GPL许可。)
一种解决方法是使用SQLite的本地版本与readline的支持。
从您的设备的数据库文件复制到本地机器:
adb pull <database-file-on-device>
使用SQLite的本地版本访问数据库文件:
sqlite3 <database-file-on-local>
如果所做的更改,你可以将它们传输到设备。 从本地计算机复制你的本地数据库文件到您的设备:
sqlite3 <database-file-on-local> <database-file-on-device>
您可以在亚行外壳使用先前的命令功能。 因此,只要亚行外壳。 然后cd到/数据/数据//数据库目录。 从这里运行(例如):sqlite3的 “SELECT * FROM”
然后你可以使用向上箭头重做命令。 一个黑客的一种,但办法比重新键入sqlite3的交互提示里面的命令更好。