A flag is a named switch that changes behavior when it is present.

Flag Parsing

flag_parsing.rb
args = 
verbose = args.include?("--verbose")
quiet = args.include?("--quiet")

mode = if quiet
  "quiet"
elsif verbose
  "verbose"
else
  "normal"
end

puts "args=#{args.join(' ')}"
puts "verbose=#{verbose}"
puts "quiet=#{quiet}"
puts "mode=#{mode}"
args = 
verbose = args.include?("--verbose")
quiet = args.include?("--quiet")

mode = if quiet
  "quiet"
elsif verbose
  "verbose"
else
  "normal"
end

puts "args=#{args.join(' ')}"
puts "verbose=#{verbose}"
puts "quiet=#{quiet}"
puts "mode=#{mode}"
args = 
verbose = args.include?("--verbose")
quiet = args.include?("--quiet")

mode = if quiet
  "quiet"
elsif verbose
  "verbose"
else
  "normal"
end

puts "args=#{args.join(' ')}"
puts "verbose=#{verbose}"
puts "quiet=#{quiet}"
puts "mode=#{mode}"
flag Small command-line tools often check for boolean flags with `include?`.