Parsing Unix command lines correctly is actually a very tricky proposition. You can have individual arguments:
someprogram -a -b -c
By convention, you can glom all of the single-character arguments together:
Some arguments can take additional values:
someprogram -dTwitter -f filename
and there are also more verbose (called “long”) arguments, introduced by two dashes:
someprogram --kthx --cheezburger
There is a convention where -- will terminate processing of command-line arguments and use the remaining contents of the command line as-is, even if they look suspiciously like more command-line arguments. ...