Frage Hardcopy von einer Bildschirmsitzung erhalten


Ich habe einen Job in einer Bildschirmsitzung gestartet, die voraussichtlich mehrere Stunden dauern wird. Von Zeit zu Zeit werde ich gebeten zu überprüfen, ob der Job noch läuft und rate mal, wieviel% der Arbeit ist.

Raten Sie, ob es funktioniert oder nicht ist so einfach wie a ps -fu $LOGNAMEum zu überprüfen, ob der Prozess noch am Leben ist, aber um das% zu erraten, muss ich die Ausgabe des Programms überprüfen (es gibt einige Informationen aus, die mit verwendet werden können grep -n um zu sehen, welche Zeile der Datei gerade verarbeitet wird).

Ich kann die Sitzung anhängen (screen -R jobLoadItems) und schaue es dir an, aber ich würde es gerne machen, ohne mich wieder an die Session zu binden. Ich habe bereits überprüft, ob ich die Bildschirmsitzung durchführen möchte Strgein-H um screenlog zu aktivieren, aber es ist so verbaooooooo, dass es den gesamten verfügbaren Speicherplatz benötigt.

Es gibt also eine Möglichkeit, nur die letzten Zeilen der Bildschirmsitzung auszudrucken, ohne sie anzuhängen. (so etwas wie screen -S jobLoadItem -Q display last 50 lines)


6
2018-03-23 12:42


Ursprung




Antworten:


Sie können verwenden

 screen  -r <name of sesion> -X hardcopy

das ist dasselbe wie Strgein-h 

von der man-Seite:

Strgein-h      (Hardcopy)
  Schreiben Sie eine Hardcopy des aktuellen Fensters in die Datei "hardcopy.n".


11
2018-03-23 12:49