ForHosting KIT · Entwickler-Tools

ANSI-Escape-Codes aus Text und Protokollen entfernen

Terminalausgaben enthalten häufig unsichtbare ANSI-Steuersequenzen für Farben, Fettdruck, Cursorbewegungen, Fenstertitel und weitere Anzeigeeffekte.

● BetaKostenlos · im Browser
Nutzen Sie es über WebAPIE-MailTelegramApp bald

In einer interaktiven Shell sind diese Anweisungen nützlich. Beim Kopieren von Protokollen in Tickets, Berichte, Suchindizes oder Datensätze werden sie jedoch zu störenden Zeichen. Dieses Werkzeug entfernt ANSI-Codes für Farbe und Formatierung, während die eigentliche Nachricht sowie Leerzeichen und Zeilenumbrüche erhalten bleiben. Fügen Sie die Ausgabe zur schnellen Bereinigung im Browser ein oder senden Sie sie über die API, wenn Klartextnormalisierung zu Ihrem automatisierten Ablauf gehört.

Verwandeln Sie formatierte Terminalausgaben in brauchbaren Klartext

Befehlszeilenprogramme erkennen häufig ein Terminal und versehen ihre Ausgabe mit Farben, Hervorhebungen, Cursorsteuerungen, Hyperlinks oder Anweisungen für den Fenstertitel. Der Bildschirm interpretiert diese Bytes, sodass Sie eine übersichtliche Statusmeldung statt der zugrunde liegenden Steuersyntax sehen. Schwierigkeiten entstehen, sobald dieselbe Ausgabe umgeleitet, aus einem Build-System kopiert, in einer Datenbank gespeichert oder in eine Supportanfrage eingefügt wird. Escape-Sequenzen können als Klammerfragmente erscheinen, Suchen stören, Diffs vergrößern und maschinelle Verarbeitung unzuverlässig machen. Dieses Werkzeug durchsucht den übergebenen Text, entfernt erkannte ANSI-Steuersequenzen und bewahrt normale Unicode-Zeichen, Abstände und Zeilenstruktur. Es verarbeitet SGR-Farbcodes, CSI-Befehle, OSC-Zeichenketten und verwandte Terminalsteuerungen. Das Ergebnis eignet sich zum Lesen, Kopieren, Indizieren, Vergleichen oder zur Übergabe an einen nachgelagerten Parser, ohne dass Darstellungsanweisungen den Inhalt verunreinigen.

So behandelt der deterministische Scanner Escape-Sequenzen

Der Bereiniger liest den Text genau einmal von Anfang bis Ende. Trifft er auf einen ESC-Einleiter oder eine gleichwertige einbyteige C1-Steuerung, prüft er die für Terminalsteuersyntax festgelegten Bytebereiche und nimmt die vollständige Sequenz auf. CSI-Befehle erkennt er anhand ihrer Parameter-, Zwischen- und Abschlussbytes. Dadurch werden Farbwechsel, Zurücksetzungen, gelöschte Zeilen und Cursorbewegungen abgedeckt, ohne eine anfällige Liste einzelner Befehle zu pflegen. Zeichenkettensteuerungen wie OSC, DCS, SOS, PM und APC werden bis BEL oder zum String Terminator entfernt. Fehlt der Abschluss, gilt der verbleibende Inhalt als Teil der Steuerdaten. Gewöhnlicher Text wird unverändert kopiert, einschließlich Emojis, nichtlateinischer Schriften, Tabulatoren, Wagenrückläufen und Zeilenumbrüchen. Die Antwort nennt die Anzahl entfernter Sequenzen und zeigt an, ob eine Änderung erfolgte. Es wird kein Terminal emuliert: Anweisungen verschwinden, sichtbare Zeichen bleiben in ihrer ursprünglichen Reihenfolge.

Nutzen Sie bereinigte Ausgaben sicher in Protokollen und Abläufen

Setzen Sie diese Funktion unmittelbar nach dem Erfassen einer Prozessausgabe ein, die Farben oder Formatierungen erzwingen kann, besonders wenn sich der Prozess nicht auf Klartext umstellen lässt. Der bereinigte Wert kann an einen Protokollsammler, Volltextindex, Vorfallsbericht, Snapshot-Test, eine Benachrichtigung oder strukturierte Extraktion weitergegeben werden. Da der Algorithmus deterministisch arbeitet, erzeugt dieselbe Eingabe stets dieselbe Ausgabe. Das ist für Build-Artefakte und Regressionstests wichtig. Das Werkzeug stellt keine Netzwerkanfragen, führt den übergebenen Text nicht aus und interpretiert darin enthaltene Shell-Befehle nicht. Das Entfernen von ANSI ist eine Normalisierung, jedoch keine universelle Sicherheitsbereinigung: HTML, SQL, CSV und Shell-Kontexte verlangen jeweils eigene Maskierung. Normale Wagenrückläufe und Rückschritte bleiben erhalten. Wenn Sie Cursorpositionen rekonstruieren müssen, verwenden Sie zuvor einen Terminalemulator. Bei üblichen farbigen Protokollen bleiben Inhalt und Aufbau erhalten, während Darstellungsrauschen verschwindet.

Protokolle der kontinuierlichen Integration bereinigen

Entfernen Sie Farben und Cursorbefehle, bevor Sie Build-Ausgaben an Tickets, Berichte oder durchsuchbare Archive anhängen.

Snapshot-Vergleiche stabilisieren

Normalisieren Sie formatierte Ausgaben, damit Tests den Nachrichteninhalt statt umgebungsabhängiger Terminaldarstellung vergleichen.

Protokolle für Textverarbeitung vorbereiten

Übergeben Sie lesbaren Klartext an Suche, Klassifizierung, Parser oder Warnungen, ohne ANSI-Anweisungen in Tokens und Feldern.

Was entfernt das Werkzeug?

Es entfernt ANSI-Escape-Sequenzen für Farben, Textattribute, Cursorsteuerungen, Terminalbefehle, Hyperlinks und Steuerzeichenketten.

Bleiben Zeilenumbrüche und Unicode-Text erhalten?

Ja. Gewöhnliche Zeichen einschließlich Unicode, Tabulatoren, Wagenrückläufe und Zeilenumbrüche behalten ihre ursprüngliche Reihenfolge.

Wird eine Cursorbewegung vor der Bereinigung dargestellt?

Nein. Das Werkzeug entfernt Terminalanweisungen, emuliert aber keinen Bildschirm und ordnet Zeichen nicht anhand der Cursorbewegung neu.

Was geschieht mit einer nicht abgeschlossenen OSC-Zeichenkette?

Die Sequenz und alles nach ihrem Einleiter werden entfernt, weil der verbleibende Inhalt nicht sicher von ihrer Nutzlast zu unterscheiden ist.

Kann ich das Ergebnis direkt als HTML oder Shell-Befehl verwenden?

Gehen Sie nicht davon aus. Das Entfernen von ANSI ersetzt keine zielspezifische Maskierung oder Validierung.

Was kostet eine API-Anfrage?

Jede API-Anfrage kostet $0.002. Derselbe deterministische Bereiniger kann auch in Ihrem Browser ausgeführt werden.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

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

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

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"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Vollständige KIT-Dokumentation lesen →