2012-04-10 3 views
1

Ich habe diese '[A' in einem Fortschrittsbalken-Modul gesehen, aber ich kann nicht herausfinden, was es tut.Was macht 'A' in einem Druckbefehl?

Wie in:

print '[]', chr(27) + '[A' 

Sie wissen, was es tut ??

Antwort

6

Es ist ein VT100 Escape sequence; es bewegt den Cursor nach oben.

Beachten Sie, dass die chr(27) die Sequenz initiiert. Oft könnte dies geschrieben werden "\033[A" (seit 33oct == 27dec). Wenn Sie jemals einer Bash-Eingabeaufforderung Farbe hinzugefügt haben, haben Sie dies gesehen.

+0

Perfekt, danke! – MFB

+0

Beachten Sie, dass Sie mehr als nur das "[A" 'benötigen, um dies zu tun. –

+0

Nun, wahrscheinlich eine VT100 Escape-Sequenz. In Wirklichkeit ist es nur eine Abfolge von Charakteren. Vielleicht hat die ASR33 diese Sequenz verwendet, um den Cursor _left_ zu bewegen :-) – paxdiablo

0

VT100-Escape-Sequenz.

ESC[<value>A bewegt den Cursor <value> Zeilen. Es sieht so aus, als ob <value> weggelassen wird, es ist standardmäßig eine Zeile.

+0

Die Dokumente sagen, dass ohne ' 'der Standardwert 1 ist, also denke ich, geht nur eine Zeile, nicht an den Anfang der aktuellen Zeile? – MFB

+0

@MFB: in der Tat ... – Dave