2017-12-18 3 views
2

Gibt es eine Möglichkeit, Argument für Kristall-Programm zu tun? Zum BeispielErforderliches Argument für das kompilierte Programm?

./myprog ~/Music -r 

Statt

./myprog -d ~/Music -r 

So läuft mein Programm gewohnt, wenn es kein [Verzeichnis] ​​Argument ist. Im Moment mit "option_parser" und kann nur -arguments tun.

Antwort

3

Es gibt keine Möglichkeit erforderlichen Argumente zu erstellen option_parser verwenden, aber Sie können Argumente analysieren und einen Fehler oder eine Ausfahrt werfen, wenn kein Argument übergeben Sie erwarten:

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 
+0

okay, dann werde ich ARGV verwenden – LavX64

Verwandte Themen