1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
$Copyleft: (c) 2001 Nobuyoshi Nakada <nobu.nokada@softhome.net> $
$Id: FIRSTSTEP.ja.rd,v 0.5 2001/04/13 06:41:28 nobu Exp $
=begin
= Ϥ
OptionParser ϥޥɥ饤ΥץβϤñ˹ԤΥ
饹Ǥ롣
ޥɥ饤βϤȤΤϡɤʥġǤۤȤƱ
ѥɬפˤʤ롣ƤˤϤĤήΤ褦ʤΤ롣
== ûĹץ
Unix ΥġΥץåϡŪ(({-})) ³ѻʸ
ǻꤵ롣̾ʣΤΤ³ƻꤹ뤳ȤǤ롣
㤨(({ls}))ޥɤʤ顢ΣĤƱư롣
ls -l -a
ls -la
ޤǶ GNU tools ʤɤ (({--})) ǻϤޤĹ̾Υå
롣
ls --all
(('OptionParser'))ϤξηݡȤ롣
ƻȤȤǽ
= Ȥ
== ñʻȤ
require 'optparse'
ARGV.options {|q|
q.def_option('--help', 'show this message') {puts q; exit(0)} # <- (1)
q.parse!
} or exit(1)
ǡ((%--help%))((%--hELp%))((%--hEl%))((%--HE%))
((%--h%)) ʤɤĹΥå((-ĹΥåФƤʸ
ʸ϶̤ʤ-))˲äơ((%-h%))ȤûΥץå
Ȥ褦ˤʤ롣(('OptionParser'))ǤϡûΥåդ
ʤä硢ưŪĹξάȤߤʤ
ΥץȤФ((%--help%))åꤹȡ(1)Υ֥å
¹Ԥ롣(({puts q}))ȤΤϡǤ륪ץΰɽ
뤳Ȥ̣롣
ʤåꤵ줿Ȥˤϡ顼å(({STDERR}))
ɽƽλ1ǽλ롣
((-(({def_option}))ȤΤϸŤСǤϻȤʤ
ؤ(({on}))Ȥ-))
== ե饰
̾ץåꤵ줿ϲ餫Υե饰((-Х
ѿȤ뤳Ȥ¿-))ʤɤåȤƤơȤǻȤǤ
ˤ롣
require 'optparse'
$verbose = false
ARGV.options {|q|
q.def_option('-v', '--verbose', 'run verbosely') {$verbose = true}
q.parse!
} or exit(1)
puts "verbose=#$verbose"
ǡ((%--verbose%))((%-V%))ʤɤȻꤵС(1)Υ֥å¹Ԥ
((|$verbose|))ˤ(({true}))åȤ뤳Ȥˤʤ롣
== ե饰 on/off
ե饰λä褦ˤ뤳ȤǤ롣
require 'optparse'
$verbose = false
ARGV.options {|q|
q.def_option('-v', '--[no-]verbose', 'run verbosely') {|$verbose|}
q.parse!
} or exit(1)
puts "verbose=#$verbose"
(('--verbose'))(('[no-]'))ȤΤդƤ뤬Ȥ뤳Ȥ̣Ƥ롣
((%--no-verbose%))ȻꤵС((|$verbose|))ˤ(({false}))åȤ롣
== Υե饰
require 'optparse'
$execute = true
ARGV.options {|q|
q.def_option('-v', '--[no-]verbose', 'run verbosely') {|$verbose|}
q.def_option('-n', '--no-execute', 'not actually run') {|$execute|}
q.parse!
} or exit(1)
puts "verbose=#$verbose"
puts "execute=#$execute"
((%--no-execute%))Ǥϡ(('[no-]'))ؤ(('no-'))ȤʤäƤ롣
ΰ㤤ϡɤ餬ǥեȤˤʤäƤ뤫ĤޤûȤȤ
(('[]'))դξϹդƤʤǥեȤˤʤ롣
Ĥޤꡢñ((%-v%))Ȼꤵ줿Ȥ((|$verbose|))(({true}))ˤʤ뤬
((%-n%))ʤ((|$execute|))ˤ(({false}))åȤ롣
=end
|