summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/main.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/main.rs b/src/main.rs
index ec0b9ea..df292b5 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -8,7 +8,12 @@ fn substitute_vars(word: &str) -> String {
match word {
"~" => env::var("HOME").unwrap(),
w if w.chars().nth(0).unwrap() == '~' => w.replace("~", env::var("HOME").unwrap().as_str()),
- w if w.chars().nth(0).unwrap() == '$' => String::from_str(w).unwrap(),
+ w if w.chars().nth(0).unwrap() == '$' => {
+ match env::var(&w[1..]) {
+ Ok(val) => val,
+ Err(_) => String::from_str("").unwrap()
+ }
+ },
w => String::from_str(w).unwrap()
}
}