是否有任何方法可以对Crystal程序进行参数?例如
./myprog ~/Music -r
而不是
./myprog -d ~/Music -r
因此,如果没有[目录]参数,我的程序将不会运行。现在使用" option_parser",只能执行-arguments。
没有办法使用option_parser
创建所需的参数,但是如果没有传递的参数,则可以解析参数并丢弃错误或退出。
require "option_parser"
directory = nil
parser = OptionParser.new
parser.on("-d DIR", "Directory [required]") do |d|
directory = d
end
parser.parse ARGV
if directory.nil?
# directory argument was not set
# print help and exit
puts parser
exit 1
else
# ...
end