Wie stelle ich die Terminalgröße in der Android AdB Shell ein?

25

Wenn ich mit "adb shell" eine Verbindung zu Android herstelle und bestimmte Befehle wie "vim" oder "mc" ausführe, sind sie auf ein "Fenster" mit 25 x 80 Zeichen beschränkt. Da ich eine Verbindung von einem Desktop-Computer aus herstelle, auf dem xterm eine viel höhere Auflösung hat, würde ich es gerne verwenden.

Wie ändere ich die Größe dieses Konsolenfensters auf zB 60x156 Zeichen?

user46935
quelle

Antworten:

24

Die Antwort ist

stty rows 60 cols 156

Eine weitere Frage ist, wie ich die Größe meines XTMs ermittle, von dem aus ich eine Verbindung herstelle, damit ich es automatisch (mithilfe eines Skripts) an stty übergeben kann.

user46935
quelle
Schön, dass Sie die Lösung für Ihr eigenes Problem gefunden haben. Vergiss nicht, es zu "akzeptieren", wenn du dazu in der Lage bist. Fügen Sie jedoch keine weitere Frage hinzu. Dies ist kein Diskussionsforum. Sie sollten eine neue Frage öffnen. Wenn es verwandt ist, können Sie über die neue Frage auf diese Frage verlinken.
Ale
2
Gibt es eine Möglichkeit, die Größe der Android-Shell automatisch an die Bildschirmgröße anzupassen? Ähnlich wie bei anderen Terminals in Unix?
Ehtesh Choudhury
1
Ich habe es versucht, aber es stand "/ system / bin / sh: stty: not found" ... muss es installiert werden oder so?
Brad Parks
2
Für diejenigen, die BuxyBox nicht kennen: BusyBox ist eine App. Das hat eine Menge gemeinsamer Unix-Tools "in sich" - es wurde speziell für eingebettete Systeme entwickelt. Um es zu versuchen, installieren Sie die BuxyBox-App auf Ihrem verwurzelten Android.
JohnTortugo
1
Wie macht man das dauerhaft?
JohnyTex
20

Die Eingabe resizenach dem Anschließen an das Gerät funktioniert bei mir:

shell@android:/ $ resize
COLUMNS=192;LINES=44;export COLUMNS LINES;
verrückter Kopf
quelle
7
Das war busybox resizefür mich.
Victor Sergienko
16

Wenn Sie ein aktuelles Android-Release verwenden mksh, können Sie einfach Folgendes tun:

COLUMNS=156
LINES=60
mgalgs
quelle
-1

Mit mksh musste ich rennen eval $(resize).

Der resizeBefehl gibt die Shell-Befehle COLUMNS=#;LINES=#;export COLUMNS LINES;an stdout aus, führt sie jedoch nicht aus. Dafür können Sie es verwenden evalund in Ihre .profile- oder Shell-RC-Datei einfügen. Während Sie dort sind, können Sie einen Alias ​​für die einfache Größenänderung hinzufügen, nachdem die Größe des tatsächlichen Fensters geändert wurde.

$ grep resize ~/.profile
eval $(resize)
alias rsz='eval $(resize)'
knh
quelle
Sie sollten das Ergebnis nicht auswerten müssen. resizean sich funktioniert nur (es macht die richtigen ioctls)
Alex Jasmin