zdpgo_env

package module
v0.1.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 5, 2024 License: Apache-2.0 Imports: 12 Imported by: 1

README

zdpgo_env

操作环境变量

版本

v0.1.0
  • 基础代码

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

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

func Exec(filenames []string, cmd string, cmdArgs []string, overload bool) error

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

func Load(filenames ...string) (err error)

Load 将读取您的env文件并将其加载到env中。 在程序开始时尽可能地调用这个函数(最好是在main中)。 如果你不带任何参数调用Load,它将默认加载当前路径中的.env。 你也可以告诉它加载哪些文件(可以有多个),比如:

zdpgo_env.Load("fileone", "filetwo")

重要的是要注意,它不会覆盖已经存在的env变量-考虑使用.env文件设置dev变量或合理的默认值。

func Marshal added in v0.1.1

func Marshal(envMap map[string]string) (string, error)

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

func Overload(filenames ...string) (err error)

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

func Parse(r io.Reader) (map[string]string, error)

Parse reads an env file from io.Reader, returning a map of keys and values.

func Read added in v0.1.1

func Read(filenames ...string) (envMap map[string]string, err error)

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

func Unmarshal(str string) (envMap map[string]string, err error)

Unmarshal reads an env file from a string, returning a map of keys and values.

func UnmarshalBytes added in v0.1.4

func UnmarshalBytes(src []byte) (map[string]string, error)

UnmarshalBytes parses env file from byte slice of chars, returning a map of keys and values.

func Write added in v0.1.1

func Write(envMap map[string]string, filename string) error

Write serializes the given environment and writes it to a file.

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL