我编写了一个名为foobar
的Ruby工具,其默认配置为
文件(称为.foobar
)。
当工具执行时没有任何参数时,配置文件的参数
可以使用:~/.foobar
。
但是,如果当前工具的路径是~/projects/foobar
,如果
~/projects/foobar/.foobar
存在,则应使用此文件而不是
~/.foobar
。
这就是为什么寻找这个配置文件的方法应该从 当前文件夹,直到当前用户文件夹。
有没有简单的方法来查找此文件?
答案 0 :(得分:0)
我会这样做:
if File.exists(".foobar")
# open .foobar
else
# open ~/..
end
答案 1 :(得分:0)
cfg_file = File.open(".foobar", "r") rescue File.open("~/.foobar", "r")
虽然说实话,我几乎总是做两件事:提供配置文件路径的选项,并允许覆盖默认配置值。后者的问题在于,除非您知道配置文件是有序的/具有优先权,否则可能会令人困惑。