Obtenha cópia impressa de uma sessão de tela

6

Tenho um job lançado em uma sessão de tela que deve ser executada por várias horas. De tempos em tempos, sou solicitado a verificar se o trabalho ainda está em andamento e acho que% do trabalho é o mesmo.

Adivinhe se está funcionando ou não é tão simples quanto executar um ps -fu $LOGNAME para verificar se o processo ainda está ativo, mas para adivinhar o% eu preciso verificar a saída do programa (ele gera alguma informação que pode ser usado com grep -n para ver qual linha de arquivo está processando atualmente.

Eu posso anexar a sessão ( screen -R jobLoadItems ) e dar uma olhada nela, mas gostaria de fazer isso sem anexar a sessão novamente. Eu já verifiquei para executar dentro da sessão de tela Ctrl a - H para ativar o screenlog, mas é tão verbooooooooose que vai ocupar todo o espaço disponível. / p>

Portanto, há uma maneira de imprimir as últimas linhas da sessão de tela sem anexá-la? (algo como screen -S jobLoadItem -Q display last 50 lines )

    
por alphamikevictor 23.03.2017 / 13:42

1 resposta

11

Você pode usar

 screen  -r <name of sesion> -X hardcopy

isto é o mesmo que Ctrl a - h

da página do manual:

Ctrla-h (hardcopy)
Write a hardcopy of the current window to the file "hardcopy.n".

    
por 23.03.2017 / 13:49

Tags