registro de pantalla: ¿Cómo omitir los caracteres de control interactivo del shell y el mensaje?

registro de pantalla: ¿Cómo omitir los caracteres de control interactivo del shell y el mensaje?

Una de mis primeras preguntas. Por favor comente si se requiere más explicación o información o si la pregunta no es como se supone que debe estar aquí.

Estoy usando la pantalla para iniciar servidores automáticamente (servidor de Minecraft en este ejemplo).

Estoy generando una pantalla como

screen -S 'server_1' -d -m "java -Xmx4G -Xms4G -jar spigot.jar"

Luego configure el archivo de registro y habilite el registro con

screen -S 'server_1' -X logfile /srv/serverinstalls/1/stdout.txt
screen -S 'server_1' -X log

Luego, el contenido de stdout.txt se lee a través de NodeJS.

La salida de "cat stdout.txt" se ve bien, pero si veo el archivo con "less stdout.txt", cada línea comienza con

>ESC[2K^M

donde ^M y ESC son caracteres de control (^M es el carácter \r). Creo que esta es la forma en que la pantalla registra el mensaje (comenzando con '>') del shell interactivo que proporciona el servidor.

¿Hay alguna forma de configurar el comando de pantalla para omitir esos caracteres de control y no registrar la parte interactiva del shell?

Si es necesario, puedo ejecutar comandos adicionales cada vez que leo el archivo de registro o reemplazar de alguna manera los caracteres no deseados usando NodeJS, pero el mensaje no tiene el mismo aspecto en todos los servidores.

Estoy ejecutando Debian 9.9 (estirado) con pantalla 4.05.00

Respuesta1

¿Ha probado alguien a continuación?

ansifilter
less -r
strings

información relacionada