我想在以下代码中使用输入path
:
File.exists?(File.expand_path(path))
我可以在path
中使用环境变量,语法应该是什么?
答案 0 :(得分:2)
要扩展环境变量,您应该自己动手:
def expand_env(str)
str.gsub(/\$([a-zA-Z_][a-zA-Z0-9_]*)|\${\g<1>}|%\g<1>%/) { ENV[$1] }
end
expand_env("${SHELL}:%USER%:$PAGER")
# => "/bin/bash:amadan:less"
(支持Windows风格和Unix风格,但只支持基本替换,而不是bash能够实现的任何疯狂的东西)。
答案 1 :(得分:1)
为了便于携带,最好使用File::join
和ENV
哈希:
File.exists?( File.join(ENV['MY_VAR'],'bin') )