Documentation
¶
Overview ¶
package zdpgo_env is a go port of the ruby dotenv library (https://github.com/bkeepers/dotenv)
Examples/readme can be found on the GitHub page at https://github.com/joho/godotenv
The TL;DR is that you make a .env file that looks something like
SOME_ENV_VAR=somevalue
and then in your go code you can call
godotenv.Load()
and all the env vars declared in .env will be available through os.Getenv("SOME_ENV_VAR")
Index ¶
- func EnvToStruct(v interface{}) error
- func Exec(filenames []string, cmd string, cmdArgs []string, overload bool) error
- func Load(filenames ...string) (err error)
- func Marshal(envMap map[string]string) (string, error)
- func Overload(filenames ...string) (err error)
- func Parse(r io.Reader) (map[string]string, error)
- func Read(filenames ...string) (envMap map[string]string, err error)
- func Unmarshal(str string) (envMap map[string]string, err error)
- func UnmarshalBytes(src []byte) (map[string]string, error)
- func Write(envMap map[string]string, filename string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EnvToStruct ¶ added in v0.1.4
func EnvToStruct(v interface{}) error
func Exec ¶ added in v0.1.1
Exec loads env vars from the specified filenames (empty map falls back to default) then executes the cmd specified.
Simply hooks up os.Stdin/err/out to the command and calls Run().
If you want more fine grained control over your command it's recommended that you use `Load()`, `Overload()` or `Read()` and the `os/exec` package yourself.
func Load ¶
Load 将读取您的env文件并将其加载到env中。 在程序开始时尽可能地调用这个函数(最好是在main中)。 如果你不带任何参数调用Load,它将默认加载当前路径中的.env。 你也可以告诉它加载哪些文件(可以有多个),比如:
zdpgo_env.Load("fileone", "filetwo")
重要的是要注意,它不会覆盖已经存在的env变量-考虑使用.env文件设置dev变量或合理的默认值。
func Marshal ¶ added in v0.1.1
Marshal outputs the given environment as a dotenv-formatted environment file. Each line is in the format: KEY="VALUE" where VALUE is backslash-escaped.
func Overload ¶ added in v0.1.1
Overload will read your env file(s) and load them into ENV for this process.
Call this function as close as possible to the start of your program (ideally in main).
If you call Overload without any args it will default to loading .env in the current path.
You can otherwise tell it which files to load (there can be more than one) like:
godotenv.Overload("fileone", "filetwo")
It's important to note this WILL OVERRIDE an env variable that already exists - consider the .env file to forcefully set all vars.
func Parse ¶ added in v0.1.1
Parse reads an env file from io.Reader, returning a map of keys and values.
func Read ¶ added in v0.1.1
Read all env (with same file loading semantics as Load) but return values as a map rather than automatically writing values into env
func Unmarshal ¶ added in v0.1.1
Unmarshal reads an env file from a string, returning a map of keys and values.
func UnmarshalBytes ¶ added in v0.1.4
UnmarshalBytes parses env file from byte slice of chars, returning a map of keys and values.
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
examples
|
|
|
c01_hello
command
|
|
|
c02_struct
command
|
|
|
Package gotenv provides functionality to dynamically load the environment variables
|
Package gotenv provides functionality to dynamically load the environment variables |
|
encoding
Package encoding defines an interface for character encodings, such as Shift JIS and Windows 1252, that can convert to and from UTF-8.
|
Package encoding defines an interface for character encodings, such as Shift JIS and Windows 1252, that can convert to and from UTF-8. |
|
encoding/internal
Package internal contains code that is shared among encoding implementations.
|
Package internal contains code that is shared among encoding implementations. |
|
encoding/internal/identifier
Package identifier defines the contract between implementations of Encoding and Index by defining identifiers that uniquely identify standardized coded character sets (CCS) and character encoding schemes (CES), which we will together refer to as encodings, for which Encoding implementations provide converters to and from UTF-8.
|
Package identifier defines the contract between implementations of Encoding and Index by defining identifiers that uniquely identify standardized coded character sets (CCS) and character encoding schemes (CES), which we will together refer to as encodings, for which Encoding implementations provide converters to and from UTF-8. |
|
encoding/unicode/utf32
Package utf32 provides the UTF-32 Unicode encoding.
|
Package utf32 provides the UTF-32 Unicode encoding. |
|
runes
Package runes provide transforms for UTF-8 encoded text.
|
Package runes provide transforms for UTF-8 encoded text. |
|
transform
Package transform provides reader and writer wrappers that transform the bytes passing through as well as various transformations.
|
Package transform provides reader and writer wrappers that transform the bytes passing through as well as various transformations. |
|
utf8internal
Package utf8internal contains low-level utf8-related constants, tables, etc.
|
Package utf8internal contains low-level utf8-related constants, tables, etc. |