ForHosting KIT · Ferramentas para dev

Remova códigos de escape ANSI de textos e logs

A saída do terminal costuma conter sequências de controle ANSI invisíveis que adicionam cores, negrito, movimento do cursor, títulos de janela e outros efeitos visuais.

● BetaGrátis · no seu navegador
Use pelo WebAPIE-mailTelegramApp em breve

Essas instruções são úteis em um shell interativo, mas viram caracteres indesejados quando os logs são copiados para chamados, relatórios, índices de busca ou conjuntos de dados. Esta ferramenta remove códigos ANSI de cor e formatação sem alterar a mensagem, os espaços nem as quebras de linha. Cole a saída para fazer uma limpeza rápida no navegador ou envie-a pela API quando a normalização fizer parte de um fluxo automatizado.

Transforme uma saída de terminal formatada em texto útil

Programas de linha de comando frequentemente detectam o terminal e enfeitam a saída com cores, destaques, controles do cursor, hiperlinks ou instruções de título. A tela interpreta esses bytes, por isso a pessoa vê uma mensagem organizada, e não a sintaxe de controle subjacente. O problema aparece quando a mesma saída é redirecionada, copiada de um sistema de build, armazenada em banco de dados ou colada em um chamado. Sequências de escape podem surgir como trechos entre colchetes, prejudicar pesquisas, aumentar diffs e tornar o processamento automático pouco confiável. Este removedor percorre o texto fornecido, descarta sequências ANSI reconhecidas e preserva caracteres Unicode comuns, espaços e linhas. Ele trata cores SGR, comandos CSI, cadeias OSC e outros controles de terminal. O resultado pode ser lido, copiado, indexado, comparado ou enviado a outro analisador sem que instruções de apresentação fiquem misturadas ao conteúdo.

Como o scanner determinístico trata sequências de escape

O limpador lê o texto uma única vez, do começo ao fim. Ao encontrar um introdutor ESC ou um controle C1 equivalente de um byte, ele verifica as faixas definidas pela sintaxe de controle de terminal e consome a sequência completa. Comandos CSI são identificados pelos bytes de parâmetro, intermediários e finais, cobrindo mudanças de cor, redefinições, apagamento de linhas e movimento do cursor sem depender de uma lista frágil de comandos. Controles de cadeia como OSC, DCS, SOS, PM e APC são removidos até BEL ou o terminador de cadeia. Se não houver terminador, o restante é tratado como dados de controle. O texto comum é copiado exatamente, inclusive emojis, alfabetos não latinos, tabulações, retornos de carro e quebras de linha. A resposta informa quantas sequências foram removidas e se houve alteração. Nenhum terminal é emulado: as instruções somem, mas a ordem dos caracteres visíveis permanece.

Use a saída limpa com segurança em logs e automações

Use esta capacidade logo após capturar a saída de um processo que possa forçar cores ou formatação, especialmente quando não for possível configurá-lo para emitir texto simples. O valor limpo pode seguir para um agregador de logs, índice de texto, relatório de incidente, teste de snapshot, notificação ou etapa de extração estruturada. Como o algoritmo é determinístico, entradas idênticas sempre geram saídas idênticas, o que favorece artefatos de build e comparações de regressão. A ferramenta não faz solicitações de rede, não executa o texto recebido e não interpreta comandos de shell nele contidos. A remoção de ANSI é uma normalização, não uma proteção completa para qualquer destino: HTML, SQL, CSV e shell exigem escape próprio. Aplicativos de terminal também podem sobrescrever linhas com retorno de carro ou backspace; esses controles comuns são mantidos. Para reconstruir posições do cursor, use primeiro um emulador. Em logs coloridos comuns, a limpeza preserva o conteúdo e remove o ruído visual.

Limpar logs de integração contínua

Remova cores e comandos do cursor antes de anexar uma saída de build a um chamado, relatório ou arquivo pesquisável.

Estabilizar comparações de snapshots

Normalize a saída formatada para que os testes comparem a mensagem, e não o estilo do terminal dependente do ambiente.

Preparar logs para processamento de texto

Envie texto legível para busca, classificação, análise ou alertas sem instruções ANSI contaminando tokens e campos.

O que a ferramenta remove?

Ela remove sequências de escape ANSI usadas em cores, atributos de texto, controles do cursor, comandos do terminal, hiperlinks e cadeias de controle.

Ela preserva quebras de linha e texto Unicode?

Sim. Caracteres comuns, inclusive Unicode, tabulações, retornos de carro e quebras de linha permanecem na ordem original.

O movimento do cursor é renderizado antes da limpeza?

Não. A ferramenta remove instruções do terminal, mas não emula uma tela nem reorganiza caracteres conforme o movimento do cursor.

O que acontece com uma cadeia OSC ou outro controle sem término?

A sequência e tudo após o introdutor são removidos, pois não é possível separar com segurança o conteúdo restante da carga de controle.

Posso usar o resultado diretamente como HTML ou comando de shell?

Não presuma isso. Remover ANSI não substitui o escape nem a validação exigidos pelo destino.

Quanto custa uma solicitação à API?

Cada solicitação à API custa US$ 0,002. O mesmo limpador determinístico também pode ser executado no navegador.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/str/remove-ansi

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/str/remove-ansi \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"\u001b[32mBuild passed\u001b[0m\n\u001b[1;33m2 warnings\u001b[0m"}'
{
  "text": "\u001b[32mBuild passed\u001b[0m\n\u001b[1;33m2 warnings\u001b[0m"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "str.remove_ansi",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Ver a documentação completa do KIT →