有没有办法验证.env文件?

Mr *_*kél 5 ini

尝试解析我的.env文件时遇到错误,但是我无法弄清楚它的错误位置。有没有一种简便的方法可以在线或以其他方式对文件进行验证/验证?

非常感谢!

kni*_*wim 0

这取决于您使用的语法。查看DockerNPM文档,不同的工具似乎能够解析的范围不同。

我使用一个简单的 grep 来验证我是否有一个<key>=<value>模式,其中键和值不为空。您可以调整模式以匹配您的上下文,例如确保大写键。

#!/bin/bash

for envfile in $(find . -maxdepth 1 -type f -name '.env.*'); do 
    for line in $(cat ${envfile}); do
        # exclude comments
        if [[ "${line:0:1}" == "#" ]]; then
            continue
        fi

        match_line=$(echo ${line} | grep -E "^[A-Za-z0-9_].+=.+$")

        if [[ ${match_line} == "" ]]; then
            echo "Error in file: ${envfile}: line: ${line}"
        fi
    done
done
Run Code Online (Sandbox Code Playgroud)

或者,查看您的语言 loadenv 库,看看是否可以捕获特定的解析异常(如果有),以缩小导致错误的特定行的范围。