5 个版本
0.16.1 | 2023年3月23日 |
---|---|
0.16.0 | 2023年3月23日 |
0.15.2 | 2023年3月20日 |
0.15.1 | 2023年3月18日 |
0.15.0 | 2023年3月18日 |
#796 in 配置
每月 77 次下载
39KB
929 行
dotenv-rs
从 dotenv 分叉而来
使用 Dotenv 的示例项目如下
extern crate dotenv_rs;
use dotenv_rs::dotenv;
use std::env;
fn main() {
dotenv().ok();
for (key, value) in env::vars() {
println!("{}: {}", key, value);
}
dotenv_with_prefix(&String::from("Test")).ok();
for (key, value) in env::vars() {
println!("{}: {}", key, value);
}
}
变量替换
可以使用 .env
文件中的 $VARIABLE
语法重用变量。语法和规则类似于 bash,以下是一个示例
VAR=one
VAR_2=two
# Non-existing values are replaced with an empty string
RESULT=$NOPE #value: '' (empty string)
# All the letters after $ symbol are treated as the variable name to replace
RESULT=$VAR #value: 'one'
# Double quotes do not affect the substitution
RESULT="$VAR" #value: 'one'
# Different syntax, same result
RESULT=${VAR} #value: 'one'
# Curly braces are useful in cases when we need to use a variable with non-alphanumeric name
RESULT=$VAR_2 #value: 'one_2' since $ with no curly braces stops after first non-alphanumeric symbol
RESULT=${VAR_2} #value: 'two'
# The replacement can be escaped with either single quotes or a backslash:
RESULT='$VAR' #value: '$VAR'
RESULT=\$VAR #value: '$VAR'
# Environment variables are used in the substutution and always override the local variables
RESULT=$PATH #value: the contents of the $PATH environment variable
PATH="My local variable value"
RESULT=$PATH #value: the contents of the $PATH environment variable, even though the local variable is defined
Dotenv 将解析文件,按照注释中的描述替换变量。
使用 dotenv!
宏
将 dotenv_codegen
添加到您的依赖项中,并在您的 crate 的顶部添加以下内容
#[macro_use]
extern crate dotenv_codegen;
然后,在您的 crate 中
fn main() {
println!("{}", dotenv!("MEANING_OF_LIFE"));
}
依赖项
~120KB