Omnikit
ProgramowaniePlikiFinanseWszystkie narzędzia
Ctrl K
Narzędzia dla programistówNarzędzia do plikówKalkulatory finansoweWszystkie narzędzia
Strona głównaNarzędzia dla programistówWalidator pliku .env
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

Walidator pliku .env

programowanie

Sprawdzanie pliku .env linia po linii tak, jak czyta go dotenv, i konwersja do JSON lub YAML

Działa w przeglądarce. Wpisane dane nie są nigdzie wysyłane. Sprawdzono 16 października 2026.

Plik .env zawiera jedno KEY=value w każdej linii i jest czytany przez pakiet dotenv oraz podobne narzędzia. Znak # rozpoczyna komentarz nawet wewnątrz wartości bez cudzysłowu, więc PASSWORD=abc#123 zostaje odczytane jako abc. Cudzysłowy zachowują spacje i znaki #, podwójne cudzysłowy zamieniają \n na znak nowej linii, a gdy klucz występuje dwa razy, obowiązuje ostatnia wartość.

Ta strona została przetłumaczona maszynowo z angielskiego oryginału. Tłumaczenie nie zostało jeszcze sprawdzone przez człowieka, dlatego wiążąca jest wersja angielska. Przeczytaj angielski oryginał

Dalej:
  • Linter Dockerfile Sprawdź Dockerfile 55 regułami hadolint: przypięte wersje, użytkownik root, cache i więcej
  • Konwerter YAML na JSON Konwertuj YAML na JSON i JSON na YAML, z rozwiązanymi kotwicami

Jak sprawdzić plik .env pod kątem błędów

1

Wklej plik .env do lewego panelu lub kliknij Otwórz plik.

2

Przeczytaj problemy pod nim: każdy podaje swoją linię, a Linia N przenosi tam kursor.

3

Wybierz format, JSON, YAML, Eksport shell, Plik env Dockera lub .env.example, aby zobaczyć przekonwertowane zmienne.

4

Kliknij Kopiuj lub Pobierz, aby zapisać przekonwertowany plik.

O walidatorze pliku .env

Plik .env wygląda prosto, ale drobne pomyłki zmieniają to, co otrzymuje program, bez żadnego błędu: # w haśle je ucina, niezamknięty cudzysłów staje się częścią wartości, a druga linia z tym samym kluczem po cichu zastępuje pierwszą. To narzędzie czyta plik dokładnie tak, jak pakiet dotenv, i pokazuje każdą taką linię.

Co jest sprawdzane, z numerem linii dla każdego przypadku:

Problem Przykład Co się dzieje
To nie jest przypisanie just some text ignorowane
# w wartości bez cudzysłowu PASS=abc#123 odczytane jako abc
Niezamknięty cudzysłów NAME="Asha wartość zachowuje cudzysłów
Zduplikowany klucz PORT dwa razy obowiązuje ostatni
Nazwa odrzucana przez powłokę feature.flags=on source .env kończy się błędem
Niezdefiniowane odwołanie ${REDIS_HOST} pozostaje bez zmian
Spacje bez cudzysłowu FROM=Example Team psuje się w powłoce

Błędy to linie, które dotenv ignoruje lub odczytuje źle; ostrzeżenia działają w dotenv, ale nie w powłoce, Dockerze ani Compose; uwagi, np. o pustej wartości, mają charakter informacyjny.

Konwersje. Zmienne w postaci, w jakiej czyta je dotenv, można skopiować lub pobrać w 5 formach: jako obiekt JSON; jako YAML, w którym każda wartość pozostaje łańcuchem, aby 0123 i true nie zostały zinterpretowane inaczej; jako linie export dla powłoki z bezpiecznymi apostrofami; jako plik env Dockera, który nie może zawierać wartości wieloliniowych; oraz jako .env.example z każdym kluczem i bez wartości, gotowy do commitu.

Odczyt jest porównywany z samym dotenv na 401 plikach testowych, w tym z kluczami wieloliniowymi, końcami linii CRLF i każdym stylem cudzysłowów. Nic nie jest rozwijane: ${OTHER} pozostaje bez zmian, tak jak w samym dotenv.

Plik pozostaje wyłącznie w pamięci przeglądarki. Nigdy nie jest wysyłany ani przechowywany i znika po zamknięciu strony, więc można bezpiecznie wkleić prawdziwe sekrety.

Najczęściej zadawane pytania

Dlaczego zmienna .env jest ucinana na znaku #?

W pliku .env znak # rozpoczyna komentarz nawet w środku wartości bez cudzysłowu, więc PASSWORD=abc#123 zostaje odczytane jako abc. Po ujęciu wartości w cudzysłów, PASSWORD="abc#123" lub PASSWORD='abc#123', cały tekst zostaje zachowany. Każda linia z tym problemem jest tu oznaczana wraz z numerem linii.

Czy wartość w .env może zawierać spacje?

Tak. dotenv usuwa spacje na obu końcach, ale zachowuje te w środku, więc NAME=Example Team działa. Powłoka wykonująca source .env zatrzyma się jednak na spacji, a Docker zachowuje wszystko dosłownie. Ujęcie w cudzysłów wartości ze spacjami, NAME="Example Team", działa tak samo w dotenv, Compose i powłokach.

Jak zapisać wartość wieloliniową w pliku .env?

Należy ująć wartość w podwójny cudzysłów i albo faktycznie złamać linie, albo wpisać \n w miejscu każdego podziału. dotenv odczytuje oba warianty i zamienia \n na znak nowej linii tylko wewnątrz podwójnego cudzysłowu. Apostrofy i backticki również obejmują wiele linii, ale pozostawiają \n bez zmian. Plik env Dockera w ogóle nie może zawierać wartości wieloliniowych.

Co się dzieje, gdy klucz występuje w pliku .env dwa razy?

Obowiązuje ostatnia wartość, bez żadnego ostrzeżenia ze strony dotenv, więc PORT ustawiony na górze może zostać po cichu zastąpiony innym PORT niżej. To narzędzie wypisuje każdy duplikat z linią pierwszej definicji, aby można było usunąć ten, który nie powinien się tam znaleźć.

Czy ${VARIABLES} są rozwijane w pliku .env?

Nie przez sam dotenv: API=${HOST}/api pozostaje dokładnie tak, jak zapisano. Docker Compose i pakiet dotenv-expand zastępują ${HOST} jego wartością, a ${HOST:-fallback} podaje wartość domyślną, gdy HOST nie jest ustawiony. Odwołania do nazw, których plik nigdzie nie definiuje, są tu oznaczane, ponieważ w tych narzędziach stają się puste.

Czy wklejanie tutaj pliku .env z prawdziwymi sekretami jest bezpieczne?

Tak. Plik jest odczytywany przez kod działający we własnej przeglądarce; nic nie jest wysyłane, logowane ani przechowywane, a plik znika po zamknięciu lub przeładowaniu strony. W przeciwieństwie do formatu wyjściowego, który jest zapamiętywany, wklejony tekst nigdy nie jest zapisywany, nawet w pamięci przeglądarki.

Źródła

  • dotenv README, What rules does the parsing engine follow? (motdotla/dotenv)Comments, quotes, multi-line values, \n expansion and duplicates
  • POSIX.1-2024 Base Definitions, 3.216 Name (The Open Group)Which variable names a shell accepts
  • Docker Docs, docker container run, --env-fileDocker env files are read line by line, literally
  • Docker Docs, Interpolation in Compose${VAR} and ${VAR:-default} references

Ostatnia weryfikacja: 16 października 2026.

Stawki i przepisy się zmieniają; przed oparciem się na danej liczbie należy sprawdzić źródło.

Nadal coś nie działa? Zapytaj o narzędzie Walidator pliku .env a odpowiedzieć może każdy, kto zna odpowiedź. Konto nie jest potrzebne.

Powiązane narzędzia

Wszystkie narzędzia dla programistów
Tester wyrażeń regularnychTestowanie wyrażeń regularnych JavaScript z podświetlaniem na żywo i objaśnieniem prostym językiemPorównywarka tekstówPorównanie dwóch tekstów obok siebie z każdym dodanym i usuniętym wierszemPorównywanie JSONPorównaj dwa dokumenty JSON i zobacz każdą dodaną, usuniętą i zmienioną wartośćPodgląd Open GraphWklej stronę i zobacz kartę udostępniania dla Facebooka, LinkedIn, X, WhatsApp i SlackaGęstość słów kluczowych i czytelnośćLiczba słów i fraz, gęstość, czas czytania i wskaźnik czytelności FleschaKody statusu HTTPKażdy kod statusu HTTP: co oznacza, kiedy go wysyłać i z którego RFC pochodziParser user agentaOdczytaj ciąg user-agent: przeglądarka, silnik, system, typ urządzenia i czy to botTester JSONPathUruchamiaj zapytania JSONPath zgodne z RFC 9535 na wklejonym JSON i zobacz każde dopasowanie wyróżnione
Czy to narzędzie było pomocne?
Omnikit

Małe zadania wykonywane w przeglądarce. Bezpłatnie, szybko i prywatnie. Pliki nigdy nie są przesyłane.

Pliki

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

Programowanie

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

Finanse

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
PoradnikiPytaniaO serwisieJak sprawdzamyBiblioteka prawa (beta)PrywatnośćRegulaminUjawnieniaKontaktMore: Exam practice (UGC NET Paper 1)Działa w przeglądarce. Nic nie jest przesyłane. © 2026 Omnikit (theomnikit.com)