.env-Datei-Parser – Validieren & Formatieren
.env-Datei-Parser: Syntax prüfen, Duplikate erkennen, alphabetisch sortieren, in JSON, YAML oder Docker-Formate konvertieren. Nur im Browser.
Was ist der .env-Datei-Parser?
Der .env File Parser & Formatter ist ein browserbasiertes Werkzeug für die Arbeit mit Umgebungsvariablen-Dateien. Er analysiert KEY=VALUE-Inhalte, um Syntaxfehler zu erkennen, doppelte Schlüssel zu identifizieren und Dateistatistiken anzuzeigen; er konvertiert Ihre Variablen mit einem Klick in JSON-, YAML-, Docker---env-file- oder docker-compose.yml-Format; und er führt zwei .env-Dateien mit interaktiver Konfliktlösung zusammen, wenn derselbe Schlüssel in beiden Dateien mit unterschiedlichen Werten vorkommt.
Verwenden Sie ihn, wenn Sie eine Umgebungsdatei vor dem Deployment prüfen, eine Konfiguration in einem anderen Format mit einem Teammitglied teilen, eine Basis-.env mit einem umgebungsspezifischen Override zusammenführen oder einfach eine lange Datei alphabetisch sortieren möchten, damit sie leichter zu überfliegen ist. Alles läuft im Browser — Ihre Geheimnisse gelangen niemals auf einen Server.
Hauptfunktionen
- KEY=VALUE-Paare mit Unterstützung für Anführungszeichen und mehrzeilige Werte parsen — einfach und doppelt angeführte Werte werden automatisch entangeführt; Inline-Kommentare nach nicht angeführten Werten werden entfernt.
- Doppelte Schlüssel mit Warnabzeichen erkennen — jeder Schlüssel, der mehr als einmal vorkommt, wird im Validierungsbereich mit einem gelben Warnsymbol markiert.
- Syntax validieren: fehlendes =, leere Schlüssel, ungültige Zeichen — der Parser erzwingt, dass Schlüssel mit einem Buchstaben oder Unterstrich beginnen und nur alphanumerische Zeichen und Unterstriche enthalten müssen (
/^[a-zA-Z_][a-zA-Z0-9_]*$/). Jeder Verstoß meldet die genaue Zeilennummer. - Variablen alphabetisch sortieren — die Schaltfläche „Sortieren" schreibt den Eingabe-Textbereich mit Variablen in aufsteigender lexikografischer Reihenfolge neu und ersetzt den ursprünglichen Inhalt.
- In JSON-Format konvertieren — erzeugt ein hübsch gedrucktes JSON-Objekt mit allen Variablenschlüsseln und -werten.
- In YAML-Format konvertieren — umschließt Werte automatisch mit doppelten Anführungszeichen, wenn der Wert YAML-Sonderzeichen enthält (
:,#,{,},[,],,,&,*,!,|,>,',",%,@, ``), booleanähnliche Zeichenketten (true,false,yes,no,null`), rein numerische Zeichenketten oder leere Werte. - In Docker-
--env-file-Format konvertieren — gibt reineKEY=VALUE-Paare ohne Anführungszeichen aus, wie vondocker run --env-filebenötigt. - In docker-compose.yml-Umgebungsblock konvertieren — umschließt die Ausgabe in einem
environment:-YAML-Block mit Listenelementen (- KEY=VALUE), bereit zum Einfügen in einedocker-compose.yml-Service-Definition. - Zwei .env-Dateien mit Konflikterkennung und -lösung zusammenführen — nebeneinander angeordnete Textbereiche; Konflikte werden mit beiden Werten aufgelistet, sodass Sie wählen können, welcher gewonnen hat, bevor Sie ihn anwenden.
- Statistiken anzeigen: Variablenanzahl, Kommentare, leere Zeilen — vier Zähler werden nach dem Parsen angezeigt: Variablen, Kommentare, Leerzeilen und Duplikate.
- Datei-Upload-Unterstützung — laden Sie
.env-,.env.*- oder.txt-Dateien direkt von der Festplatte hoch. - 100 % clientseitige Verarbeitung — Ihre Geheimnisse verlassen nie Ihren Browser.
Verwendung des .env-Datei-Parsers
Schritt 1: .env-Inhalt eingeben oder hochladen
Wechseln Sie zwischen den beiden Modi mit den Tabs Parsen & Validieren und Zusammenführen oben im Tool.
Im Parse-Modus fügen Sie Ihren .env-Inhalt direkt in den Eingabe-Textbereich links ein, oder klicken Sie auf Hochladen, um eine Datei von der Festplatte zu laden (akzeptiert .env-, .env.*- und .txt-Dateien). Wenn Sie das Verhalten des Tools ohne eigene Daten erkunden möchten, klicken Sie auf Beispiel laden, um die Eingabe mit einer Demo-Datei zu füllen, die Kommentare, angeführte Werte, einen doppelten Schlüssel und eine absichtlich fehlerhafte Zeile enthält.
Beispieleingabe:
# Application Configuration
APP_NAME=my-awesome-app
APP_ENV=production
APP_PORT=3000
# Database
DATABASE_URL="postgres://user:pass@localhost:5432/mydb"
DATABASE_POOL_SIZE=10
# Duplicate key (triggers warning)
APP_PORT=8080
# Invalid line (triggers error)
MISSING_EQUALS
Schritt 2: Statistiken und Validierungsbereich überprüfen
Nachdem Sie Inhalt eingegeben oder eingefügt haben, erscheinen zwei Bereiche unterhalb des Editors:
Statistiken zeigt vier Zähler in einem Raster:
- Variablen — Anzahl der gültigen KEY=VALUE-Einträge
- Kommentare — Zeilen, die mit
#beginnen - Leerzeilen — leere Zeilen
- Duplikate — Schlüssel, die mehr als einmal vorkommen (Zähler wird gelb, wenn nicht null)
Validierung listet alle gefundenen Probleme auf:
- Doppelte Schlüssel erscheinen mit einem gelben Dreieck-Symbol: „Duplicate key: APP_PORT"
- Syntaxfehler erscheinen mit einem roten X-Symbol unter Angabe der genauen Zeile: „Line 14: Missing '=' sign"
- Wenn keine Probleme vorliegen, bestätigt ein grünes Häkchen: „No issues found"
Schritt 3: Ausgabeformat wählen
Der Formatwähler des rechten Bereichs bietet fünf Optionen:
| Schaltflächenbeschriftung | Ausgabeformat | Hauptanwendungsfall |
|---|---|---|
.env | KEY=VALUE (neu angeführt) | Saubere, normalisierte .env |
JSON | Hübsch gedrucktes JSON-Objekt | Konfiguration für JSON-verarbeitende Apps |
YAML | KEY: value (automatisch angeführt) | Ansible-Variablen, Helm-Werte, App-Konfigurationsdateien |
Docker --env-file | Reines KEY=VALUE, keine Anführungszeichen | docker run --env-file <Datei> |
docker-compose.yml | environment:-Listenblock | In eine Service-Definition einfügen |
Klicken Sie auf eine Schaltfläche, um die Ausgabe sofort umzuschalten. Alle Formate schließen Kommentarzeilen und Leerzeilen aus — nur gültige Variableneinträge werden berücksichtigt.
Das .env-Ausgabeformat normalisiert auch Anführungszeichen: Werte, die Leerzeichen, # oder " enthalten, werden automatisch in doppelte Anführungszeichen eingeschlossen, wobei interne doppelte Anführungszeichen escaped werden.
Schritt 4: Sortieren und Kopieren
Klicken Sie auf Sortieren, um den Eingabe-Textbereich mit Variablen in alphabetischer Reihenfolge neu zu schreiben. Dies verändert die Eingabe direkt, sodass der sortierte Inhalt zur neuen Quelle für Parsen und Ausgabe wird.
Klicken Sie auf Kopieren im Kopfbereich des Ausgabebereichs, um das formatierte Ergebnis in die Zwischenablage zu kopieren.
Schritt 5: Zwei .env-Dateien zusammenführen (Optional)
Wechseln Sie zum Tab Zusammenführen. Fügen Sie eine .env-Datei in den Datei A-Textbereich ein oder laden Sie sie hoch, und eine weitere in Datei B, dann klicken Sie auf Dateien zusammenführen.
- Wenn die beiden Dateien keine widersprüchlichen Schlüssel haben (denselben Schlüssel mit unterschiedlichen Werten), wird die Zusammenführung sofort abgeschlossen und das Ergebnis erscheint in der Eingabe des Parse-Tabs zur weiteren Bearbeitung.
- Wenn Konflikte bestehen, listet ein Konfliktlösungs-Bereich jeden widersprüchlichen Schlüssel mit beiden als Schaltflächen angezeigten Werten auf. Klicken Sie auf die Schaltfläche für den Wert, den Sie behalten möchten (A oder B), und klicken Sie dann auf Zusammenführung anwenden, um die Dateien mit Ihren Auswahlen zu kombinieren.
Praktische Beispiele
Prüfung einer Produktions-.env vor dem Deployment
Fügen Sie die Produktionsumgebungsdatei ein und schauen Sie sich den Validierungsbereich an. Schon ein einziger Fehler „Missing '=' sign" oder eine Warnung über doppelte Schlüssel kann auf einen Kopier-Einfüge-Fehler hinweisen, der einen Laufzeit-Konfigurationsfehler verursachen würde. Die Statistikzähler geben Ihnen eine schnelle Anzahl zum Abgleich mit Ihrer erwarteten Variablenliste.
Konvertierung für Docker
Sie haben eine .env-Datei, die mit dotenv in Node.js funktioniert, müssen sie aber an einen Docker-Container übergeben. Wählen Sie Docker --env-file zur Verwendung mit docker run --env-file .env, oder wählen Sie docker-compose.yml, um einen fertigen environment:-Block zu erhalten:
environment:
- APP_NAME=my-awesome-app
- APP_ENV=production
- DATABASE_POOL_SIZE=10
Fügen Sie den Block direkt in Ihre Service-Definition ein.
Basis- und Override-Dateien zusammenführen
Ihr Projekt hat .env.base mit gemeinsamen Standardwerten und .env.local mit entwicklerspezifischen Overrides. Laden Sie .env.base in Datei A und .env.local in Datei B, klicken Sie auf Dateien zusammenführen, lösen Sie etwaige Konflikte, indem Sie den lokalen Override-Wert wählen, und kopieren Sie dann die zusammengeführte Ausgabe als Ihre funktionierende .env.
Tipps und Best Practices
Laden Sie Dateien hoch, anstatt lange Konfigurationen einzufügen. Die Datei-Upload-Schaltfläche akzeptiert .env-, .env.*- und .txt-Formate. Dies vermeidet Größenbeschränkungen der Zwischenablage und versehentliche Trailing-Space-Beschädigung, die beim Kopieren aus Terminals auftreten kann.
Sortieren Sie vor dem Diff. Wenn Sie zwei Umgebungsdateien manuell vergleichen, sortieren Sie beide zuerst. Die Sortierschaltfläche normalisiert die Reihenfolge, damit Ihr Diff-Tool aussagekräftige Änderungen findet und nicht Lärm durch unterschiedliche Variablenreihenfolgen.
Die YAML-Ausgabe setzt booleanähnliche Werte automatisch in Anführungszeichen. Der Formatter erkennt Zeichenketten wie true, false, yes, no und null und schließt sie in doppelte Anführungszeichen ein. Dies verhindert, dass YAML-Parser FEATURE_FLAG=true als boolesches true anstatt als Zeichenkette "true" interpretieren.
Das .env-Ausgabeformat setzt Werte mit Leerzeichen erneut in Anführungszeichen. Wenn Ihre Eingabe SECRET_KEY=my secret with spaces enthält, wird die .env-Ausgabe sie als SECRET_KEY="my secret with spaces" rendern. Dies ist sicher, um es in jeden dotenv-kompatiblen Loader zurückzukopieren.
Inline-Kommentare bei nicht angeführten Werten werden entfernt. Eine Zeile wie APP_PORT=3000 # HTTP port wird den Wert als 3000 parsen und den Inline-Kommentar verwerfen. Angeführte Werte wie DESCRIPTION="hello # world" behalten das # als Teil des Werts.
Häufige Probleme und Fehlerbehebung
„Line N: Missing '=' sign" — Die Zeile hat Inhalt, aber kein Gleichheitszeichen. Dies ist der häufigste Fehler beim Einfügen von Shell-Export-Anweisungen wie export APP_NAME=foo. Entfernen Sie das Schlüsselwort export vor dem Einfügen.
„Line N: Empty key" — Eine Zeile beginnt mit =, wie zum Beispiel =value. Der Parser benötigt einen nicht leeren Schlüssel vor dem Gleichheitszeichen.
„Line N: Invalid key 'MY-KEY'" — Bindestriche sind in Umgebungsvariablen-Schlüsseln gemäß POSIX-Standard nicht erlaubt, und dieser Parser erzwingt ^[a-zA-Z_][a-zA-Z0-9_]*$. Ersetzen Sie Bindestriche durch Unterstriche: MY_KEY.
Duplikatschlüssel-Warnung, aber Werte sind gleich — Der Parser markiert alle Schlüssel, die mehr als einmal vorkommen, unabhängig davon, ob sich die Werte unterscheiden. Entfernen Sie die redundante Zeile aus der Eingabe.
Zusammenführen-Schaltfläche ist ausgegraut — Sowohl Datei A als auch Datei B müssen Inhalt haben. Die Schaltfläche ist deaktiviert, wenn einer der Textbereiche leer ist.
YAML-Ausgabe hat unerwartete Anführungszeichen — Werte, die rein numerisch sind oder booleschen Literalen entsprechen (true, false, yes, no, null), werden angeführt, um ihren String-Typ zu bewahren. Dies ist beabsichtigtes und korrektes YAML-Verhalten.
Datenschutz und Sicherheit
Der .env File Parser läuft vollständig in Ihrem Browser ohne serverseitige Verarbeitung. Ihre Umgebungsvariablen — einschließlich API-Schlüssel, Datenbankanmeldeinformationen und geheime Token — werden nie über das Netzwerk übertragen. Die Parser-, Validierungs-, Formatkonvertierungs- und Zusammenführungslogik sind allesamt JavaScript-Funktionen, die lokal ausgeführt werden. Das Tool funktioniert nach dem ersten Laden der Seite offline. Keine Drittanbieter-Analyse-Skripte haben Zugriff auf den Textbereich-Inhalt.
Häufig gestellte Fragen
Ist der .env File Parser kostenlos? Ja, völlig kostenlos und ohne Konto erforderlich.
Ist es sicher, echte API-Schlüssel und Geheimnisse einzufügen? Ja. Die gesamte Verarbeitung erfolgt in Ihrem Browser mit lokalem JavaScript. Nichts wird an einen Server gesendet. Ihre Geheimnisse bleiben auf Ihrem Gerät.
Kann ich es offline nutzen? Ja. Nachdem die Seite geladen ist, funktionieren Parsen und Konvertierung ohne Internetverbindung.
Unterstützt es mehrzeilige Werte? Der Parser verarbeitet einzeilige angeführte Werte. Echte mehrzeilige Werte, die sich über mehrere Zeilen erstrecken (mit Backslash-Fortsetzung oder Heredoc-ähnlicher Syntax), werden derzeit nicht unterstützt. Teilen Sie mehrzeiligen Inhalt in eine einzige angeführte Zeile auf, bevor Sie ihn parsen.
Warum erscheint mein angeführter Wert in der Ausgabe noch mit entfernten Anführungszeichen? Die unquoteValue-Funktion entfernt passende einfache oder doppelte Anführungszeichen, die den gesamten Wert umschließen. DATABASE_URL="postgres://..." wird intern zu postgres://... und wird je nach Ausgabeformat nach Bedarf neu angeführt. Dies ist das korrekte Verhalten für die Formatkonvertierung.
Was passiert mit Kommentarzeilen in der Ausgabe? Kommentare (Zeilen, die mit # beginnen) werden von allen Ausgabeformaten ausgeschlossen. Nur gültige Variableneinträge werden berücksichtigt. Kommentare werden im Statistikbereich gezählt, aber nicht in die Ausgabe geschrieben.
Kann ich mehr als zwei Dateien zusammenführen? Das Tool unterstützt das Zusammenführen von genau zwei Dateien gleichzeitig. Um drei oder mehr Dateien zusammenzuführen, führen Sie zuerst A+B zusammen, kopieren Sie das Ergebnis in den Parse-Modus und verwenden Sie es dann als Datei A für eine zweite Zusammenführung mit Datei C.
Bewahrt der Sortiervorgang Kommentarzeilen? Nein. Die Sortierschaltfläche verwendet nur die geparsten gültigen Variablen, um die sortierte Eingabe neu zu erstellen, wobei Kommentarzeilen und Leerzeilen verworfen werden. Verwenden Sie Sortieren, wenn Sie eine saubere, normalisierte Datei möchten.
Was ist das Docker---env-file-Format? docker run --env-file erwartet reine KEY=VALUE-Zeilen ohne Shell-Anführungszeichen. Das Docker-Ausgabeformat lässt Anführungszeichen auch für Werte mit Leerzeichen weg, was für das Docker-Format korrekt ist, aber in einem Shell-Skript fehlschlagen würde. Verwenden Sie das .env-Format, wenn Sie Shell-sichere Anführungszeichen benötigen.
Kann ich erkennen, welche Variablen sich zwischen zwei Dateien unterscheiden, ohne sie zusammenzuführen? Wechseln Sie in den Merge-Modus und klicken Sie auf Dateien zusammenführen. Die Konfliktliste zeigt jeden Schlüssel, bei dem Datei A und Datei B unterschiedliche Werte haben, was als praktischer Diff der unterschiedlichen Variablen dient.
Verwandte Tools
- Config Generator — Strukturierte Konfigurationsdateien für verschiedene Frameworks und Umgebungen generieren.
- Docker Converter — Zwischen Docker-bezogenen Konfigurationsformaten konvertieren.
- YAML to TOML — Zwischen YAML- und TOML-Konfigurationsdateiformaten konvertieren.
Jetzt .env File Parser ausprobieren: .env File Parser & Formatter