Db argv 1 then i stub out the rake tasks at the bottom of the file since rake will look for a task based on that argument name.
Ruby command line arguments parsing.
Passing in arguments via the command line is an extremely basic programming task and a necessity for anyone trying to write a simple command line interface cli.
In your ruby programs you can access any command line arguments passed by the shell with the argv special variable argv is an array variable which holds as strings each argument passed by the shell.
Rake mytask db name this feels cleaner to me than the var foo env var and the task args blah blah2 solutions.
Opts on h help display this screen do puts opts exit end end parse.
I use a regular ruby argument in the rake file.
How to use command line arguments.
Parses command line arguments argv in order.
When a block is given each non option argument is yielded.
Put command line options here this displays the help screen all programs are assumed to have this option.
Usr bin env ruby require optparse require pp this hash will hold all of the options parsed from the command line by optionparser.
You can also use environment commandline or environment getcommandlineargs to access the command line arguments from any point in a console or windows.
To enable command line arguments in the main method in a windows forms application you must manually modify the signature of main in program cs the code generated by the windows forms designer creates a main without an input parameter.
All the features listed in the previous section can be enabled via the core assembly except for enabling a different method signature for main.
Options optparse optionparser new do opts todo.
Ruby command line argv check length rb one too few arguments ruby command line argv check length rb one two working on one two values received on the command line are strings in this snippet of code we first check if we got exactly 2 parameters and we do we add them together.
System commandline is architected around a core assembly that includes an api for configuring the command line and a parser that resolves the command line arguments into a data structure.
Once you learn how to use this you ll never go back to looking through argv manually.
When optional into keyword argument is provided the parsed option values are stored there via method so it can be hash or openstruct or other similar object.
Task database name1 task database name2 command line.
Optionparser has a number of features that make it quite appealing to ruby programmers.