Trollop là về các tùy chọn phân tích cú pháp - những thứ có thể có hoặc không có mặt.
Đối số vị trí bắt buộc không phải là một tùy chọn. Để truy cập các đối số vị trí của bạn, chỉ cần nhìn vào argv. Nếu bạn sử dụng kết hợp các tùy chọn và các đối số vị trí bắt buộc, trollop sẽ xử lý việc loại bỏ các công cụ tùy chọn và để ARGV ở trạng thái chỉ chứa những thứ bạn quan tâm.
Nếu bạn chạy mã ví dụ này:
#!/usr/bin/env ruby
require 'trollop'
opts = Trollop::options do
opt :monkey, "Use monkey mode" # flag --monkey, default false
opt :name, "Monkey name", :type => :string # string --name <s>, default nil
opt :num_limbs, "Number of limbs", :default => 4 # integer --num-limbs <i>, default to 4
end
puts "opts: #{opts}"
puts "ARGV: #{ARGV}"
Dưới đây là những gì bạn sẽ nhận được:
[~/tbear/bin]$ ./t.rb
opts: {:monkey=>false, :name=>nil, :num_limbs=>4, :help=>false}
ARGV: []
[~/tbear/bin]$ ./t.rb arg1
opts: {:monkey=>false, :name=>nil, :num_limbs=>4, :help=>false}
ARGV: ["arg1"]
[~/tbear/bin]$ ./t.rb -m arg1
opts: {:monkey=>true, :name=>nil, :num_limbs=>4, :help=>false, :monkey_given=>true}
ARGV: ["arg1"]
Chú ý cách argv là như nhau trong ví dụ 2 và ví dụ 3.
Nguồn
2013-12-10 17:16:19
Bạn có tìm hiểu làm thế nào để sử dụng lập luận vị trí với người đàn bà lẳng lơ? – dusan
@dusan Không may mắn. – Dean