Ich habe kürzlich ein Upgrade auf das neue Android SDK durchgeführt und mir ist aufgefallen, dass etwas sehr störend ist. Es scheint, dass es nicht mehr möglich ist, den Befehlsverlauf in der Shell zu verwenden. Siehst du das Gleiche? Die Android-Shell scheint mir schrecklich, aber zumindest hatte ich im letzten SDK den Befehlsverlauf. Nun, es scheint, dass, wenn man den Pfeil nach oben / unten drückt, einige Codes in der Eingabeaufforderung erscheinen (etwas wie ^ [[A, ^ [[B etc ...]). Ich habe versucht, ein wenig herumzulesen, aber ich fand nur sehr wenige, die das mit null Antworten baten. Irgendeine Idee, warum das passiert und wie man das löst?
Sie können die Shell innerhalb von rlwrap ausführen:
%Vor% Ich bevorzuge es, es in einem Emacs-Shell-Puffer selbst zu betreiben, ich empfehle das, wenn Sie nicht gegen Emacs allergisch sind. Emacs eignet sich auch zum Ausführen von adb logcat
: Sie erhalten einen Suchverlauf und die Nachrichten werden aktualisiert, sobald sie kommen, und Sie können interessante Muster in Farbe ( M-x highlight-regexp
und Freunde) einfügen.
Wenn Ctrl - p immer noch vorherige Verlaufseinträge enthält, ist es möglich, dass die Pfeiltasten aus irgendeinem Grund nicht gebunden wurden. Versuchen Sie Folgendes:
%Vor% Wenn die Pfeiltasten funktionieren, können Sie sie persistent machen, indem Sie diese beiden Zeilen zu /etc/inputrc
oder ~/.inputrc
hinzufügen:
Wenn du von einem echten Gerät (nicht von einem Emulator) sprichst, solltest du einige nicht-offizielle Firmwares ausprobieren, wie zB Cyanogenmod - Es enthält viel bessere binäre Werkzeuge, wie viel mehr funktionsfähige Shell, vernünftige Reihe von normalen UNIX-Tools, SSH-Server, etc.
Wenn Sie über Emulator sprechen, können Sie diese Binaries aus Firmwares extrahieren und in den Emulator schieben (mit einem Speicherkarten-Image).
Tags und Links android shell adb android-sdk-2.3