Module: Utils

Included in:
Rover
Defined in:
lib/rover.rb

Instance Method Summary collapse

Instance Method Details

#which(cmd) ⇒ Object

Cross-platform way of finding an executable in the $PATH.

which('ruby') #=> /usr/bin/ruby


11
12
13
14
15
16
17
18
19
20
# File 'lib/rover.rb', line 11

def which(cmd)
	exts = ENV['PATHEXT'] ? ENV['PATHEXT'].split(';') : ['']
	ENV['PATH'].split(File::PATH_SEPARATOR).each do |path|
	exts.each { |ext|
		exe = File.join(path, "#{cmd}#{ext}")
		return exe if File.executable? exe
	}
	end
	return nil
end