registro de tela - Como omitir caracteres e prompts de controle de shell interativo?

registro de tela - Como omitir caracteres e prompts de controle de shell interativo?

Uma das minhas primeiras perguntas. Por favor, comente se forem necessárias mais explicações ou informações ou se a pergunta não for como deveria estar aqui

Estou usando a tela para iniciar servidores automaticamente (servidor minecraft neste exemplo).

Estou gerando uma tela como

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

Em seguida, configure o arquivo de log e habilite o log com

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

O conteúdo de stdout.txt é então lido via NodeJS.

A saída de "cat stdout.txt" parece boa, mas se eu visualizar o arquivo com "less stdout.txt", cada linha começa com

>ESC[2K^M

onde ^M e ESC são caracteres de controle (^M é o caractere \r). Acho que é assim que a tela registra o prompt (começando com '>') do shell interativo que o servidor fornece

Existe alguma maneira de o comando screen ser configurado para omitir esses caracteres de controle e não registrar a parte interativa do shell?

Se necessário, posso executar comandos adicionais sempre que ler o arquivo de log ou substituir de alguma forma os caracteres indesejados usando NodeJS, mas o prompt não parece o mesmo em todos os servidores.

Estou rodando no Debian 9.9 (stretch) com tela 4.05.00

Responder1

Já tentou alguém abaixo?

ansifilter
less -r
strings

informação relacionada