ENV / Shell / Docker 轉換器
在瀏覽器中即時將 .env 檔案轉換為 JSON、YAML、TOML、Shell export 及 Docker ENV。無需上傳,完全在本地執行。
轉換工具
0 / 500,000 位元組
你剛測試了ENV / Shell / Docker 轉換器 — 試試 結構化資料轉換器 →
什麼是 ENV 轉換器?
沒有正式的 dotenv 規範——.env 格式起源於 Heroku-Foreman 慣例,後來分叉成不相容的方言。python-dotenv 解析器接受 key=value、key = value(含空白)、單引號和雙引號值,以及雙引號內的 \n 跳脫序列。Node 的 dotenv 套件歷來不遵守跳脫(SECRET="line1\nline2" 讀作字面的反斜線-n,不是換行)。Go 的 godotenv 和 Rust 的 dotenvy 各有自己的怪癖。轉換器在六種常見格式間標準化:dotenv(KEY=value)、JSON({"KEY":"value"})、YAML(KEY: value)、TOML(KEY = "value")、shell export(export KEY=value)和 Docker ENV(ENV KEY=value)。多行值在 dotenv 中用 "..." 配上明確的 \n、在 YAML 中用 | 字面區塊、在 TOML 中用三引號、在 shell 中用反斜線續行。轉換器在全部六種間保留它們。註釋(dotenv / YAML / TOML / shell 中的 #,// 不是 dotenv 規範的一部分儘管某些解析器接受)在轉換至 JSON 時被移除,因為 JSON 根據 RFC 8259 禁止註釋。
如何使用 ENV 轉換器
挑選 來源 和 目標 格式。貼上你的 env 檔。輸出會即時出現在右側面板。使用交換按鈕反轉方向——適合用於理性檢查 .env 檔轉成 JSON 再轉回是否相同。多行值:在 dotenv 中寫 MULTILINE="line1\nline2";轉換器會正確展開 \n 以用於 YAML 的 | 字面區塊(往該方向轉換時)。引號值:dotenv 接受 KEY="value" 和 KEY='value' 兩者並移除外層引號。特殊字元:雙引號內的 $ 在某些解析器會觸發變數替換——轉換器不替換,將值視為字面字串。錯誤面板列出解析失敗的行:KEY="unclosed 會在包含未終止引號的行被標記。用適當的檔案副檔名複製或下載。
為什麼一致的環境變數很重要
Docker 有三種不同的方式設定環境變數:Dockerfile 中的 ENV KEY=value(在建置時烤入映像,在執行時可用)、Dockerfile 中的 ARG KEY(僅建置時,除非明確提升至 ENV 否則執行時不存在),以及 docker run -e KEY=value / docker compose environment:(在容器啟動時設定,覆寫 ENV)。混淆這些是經典事件模式——透過 ENV 烤入映像的機密在 docker history 中可見並可能意外推送至公開倉庫,而相同機密透過執行時 -e 傳遞會留在映像層之外。將 .env 檔用於本地開發轉換為 docker-compose.yml 環境區塊,或轉換為 Kubernetes ConfigMap YAML,需要理解你目標階段使用哪種機制。轉換器的角色純粹是語法層面——語義(建置時 vs 執行時、機密 vs 設定)在你身上。
常見問題
我的資料安全嗎?
是的。所有轉換完全在您的瀏覽器中透過 JavaScript 進行,不會向任何伺服器發送資料。您甚至可以離線使用此工具。
支援多行數值嗎?
是的,支援 .env 檔案中的引號多行數值。例如:CERT="line1\nline2"。
如何處理注釋?
以 # 開頭的注釋行在轉換時會被去除,不會保留在輸出格式中。
把這個工具放進更大的流程裡
這些集合會把常見的後續工具與指南整理成同一條工作路徑。
瀏覽相同標籤
前往其他擁有相同工作流程、格式或用途的工具。