2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Rubyファイル実行時に引数を指定:OptionParser標準ライブラリ

Posted at

OptionParserについて

OptionParserは、Rubyの標準ライブラリで、コマンドライン引数の解析を簡単に行うためのクラスです。以下に、OptionParserの使い方をまとめました。

  1. 全文

    require 'optparse'
    
    # オプションを格納するハッシュ
    options = {}
    
    # OptionParser オブジェクトの作成とオプションの定義
    OptionParser.new do |opts|
    
      # -n オプション (数字の指定)
      opts.on('-n NUMBER') do |number|
        options[:number] = number.to_i
      end
    
    end.parse!
    
    # オプションが指定されていない場合、1000
    number = options[:number] || 1000
    
    puts "指定された数字: #{number}"
    
  2. require 'optparse' を使って、OptionParser をインポートします。

    require 'optparse'
    
  3. OptionParser オブジェクトを作成し、オプションを定義します。

    # オプションを格納するハッシュ
    options = {}
    
    OptionParser.new do |opts|
      # オプション定義
    end.parse!
    
  4. opts.on メソッドを使用して、オプションを定義します。

    opts.on('-n NUMBER') do |number|
      # オプション処理
    end
    
  5. オプションに関連付けられたブロック内で、オプション値の処理を行います。このブロックは、オプションが指定されたときに実行されます。

    options[:number] = number.to_i
    
  6. parse! メソッドを呼び出して、コマンドライン引数を解析します。これにより、定義されたオプションに従って引数が解析され、関連するブロックが実行されます。

    OptionParser.new do |opts|
      # オプション定義
    end.parse!
    
  7. オプションが解析された後、options ハッシュを使用して、オプション値にアクセスできます。

    number = options[:number] || 1000
    
  8. 実行結果

    # オプションを指定した場合
    $ ruby test.rb -n 30
    指定された数字: 30
    
    # オプションを指定しない場合
    $ ruby test.rb      
    指定された数字: 1000
    
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?