Relative Path in ruby - for File open

Hi Guys,
I am trying to fetch a file to do some processing in ruby,
instead of giving the absolute path i wanted to give relative path.

File.open(“config.txt”) do |source|
source.each_line do |line|
if line =~ /^(\w+)\s*=\s*"(.)"\s$/

In the above mentioned example, i want config.txt to be accessed from
the current path whichever user runs it.

Cheers

On Aug 18, 2009, at 22:02 , Shekar Ls wrote:

the current path whichever user runs it.
what’s the problem?

On Aug 19, 2009, at 01:02, Shekar Ls wrote:

In the above mentioned example, i want config.txt to be accessed from
the current path whichever user runs it.

By “current path” do you mean executable path or the current working
directory of the script?

If you mean the current working directory (i.e. ENV[‘PWD’]) everything
should work as you expect. Just do File.open(“config.txt”)

Ben

Ben G. wrote:

On Aug 19, 2009, at 01:02, Shekar Ls wrote:

In the above mentioned example, i want config.txt to be accessed from
the current path whichever user runs it.

By “current path” do you mean executable path or the current working
directory of the script?

If you mean the current working directory (i.e. ENV[‘PWD’]) everything
should work as you expect. Just do File.open(“config.txt”)

And if you mean the directory in which the script is located, then

AppRoot = File.expand_path(File.dirname(FILE))

File.open(File.join(AppRoot, “config.txt”)) do |source|

end

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs