Wenn Sie 'cat' für eine Datei ausführen, wird der Druckdialog geöffnet.

331
Ben

Aus einer Laune heraus habe ich heute den Befehl "cat" für eine virtuelle VirtualBox-Image-Datei (VDI) von VirtualBox ausgeführt. Wie erwartet wurde eine Vielzahl von Kauderwelsch auf der Konsole ausgegeben. Nach etwa 15 Sekunden wurde der Druckdialog geöffnet. Es wurde eine Seite mit nur mehr Maschinencode angezeigt, die zum Drucken bereit ist. Nachdem ich den Dialog geschlossen hatte, wurde der Druckvorgang wie üblich fortgesetzt.

Ich bin davon sehr verwirrt. Ich verwende macOS Sierra 10.12.6. Hat jemand eine Idee, wie dieses Verhalten überhaupt passieren kann?

2
Wenn Sie eine binäre Datei "cat", wissen Sie nicht, welche Terminal-Escape-Sequenzen Sie auslösen werden. Sie sollten Ihre Terminalkonfiguration überprüfen, um zu sehen, ob Escape-Sequenzen einen Druck auslösen. AFH vor 6 Jahren 0

1 Antwort auf die Frage

2
Thomas Dickey

Das Terminal.app von MacOS scheint dies nicht zu tun, aber iTerm2 reagiert auf die von xterm unterstützten Druckerkontrollsequenzen.

Über die Befehlszeile können Sie dies mit tun

tput mc0 

die den Bildschirminhalt druckt oder

tput mc5 

Dadurch wird der Drucker eingeschaltet. Letzteres wäre ärgerlicher, daher hatte Ihre Binärdatei wahrscheinlich die folgende Zeichenfolge mc0:

Escape[i

(die Reihenfolge für mc5hat ein 5vor i).

Als Referenz:

 CSI PM i Medienkopie (MC). Ps = 0 -> Druckbildschirm (Standardeinstellung). Ps = 4 -> Drucker-Controller-Modus ausschalten. Ps = 5 -> Drucker-Controller-Modus einschalten. 
wow, das ist wirklich cool. Vielen Dank Ben vor 6 Jahren 0