0

同じディレクトリに「main.rb」と「sub.rb」という 2 つの Ruby スクリプトがあります。

main.rb

require "./sub.rb"

someMethod

sub.rb

def someMethod
    puts __FILE__
end

main.rb スクリプトを実行すると、出力に「sub.rb」ファイルへのパスが表示されます (例: .../ruby-examples/get-script-directory/sub.rb)。puts __FILE__代わりに「main.rb」へのパスを返す行の代わりに使用できるものを探しています。

これは簡単な例です。ここでの本当の目標は、Ruby モジュール スクリプトを任意の場所に配置し、(File.dirname() などを介して) メインの実行スクリプトがあるディレクトリを参照できるようにすることです。たとえば、メイン スクリプトのディレクトリに出力またはログ ファイルを書き込むことができます。 .

含まれているモジュール スクリプトから実行中の ruby​​ スクリプトへのパスを特定する方法はありますか?

4

1 に答える 1