Mike Hommey <mh@xxxxxxxxxxxx> writes: > On Fri, Oct 05, 2007 at 04:25:07PM +0200, Pierre Habouzit <madcoder@xxxxxxxxxx> wrote: >> The option parser takes argc, argv, an array of struct option >> and a usage string. Each of the struct option elements in the array >> describes a valid option, its type and a pointer to the location where the >> value is written. The entry point is parse_options(), which scans through >> the given argv, and matches each option there against the list of valid >> options. During the scan, argv is rewritten to only contain the >> non-option command line arguments and the number of these is returned. >> >> Aggregation of single switches is allowed: >> -rC0 is the same as -r -C 0 (supposing that -C wants an arg). > > I like options aggregation, but I'm not sure aggregating option arguments > is a good idea... I can't even think of an application that does it. I think most allow this for the last option in a row. Tar is somewhat more perverse with its non-option command string: tar xfzbv filename.tgz 40 uses filename.tgz as the option argument for "f" and 40 for "b". Note that while tar accepts options instead of the initial command string, tar -xfzbv filename.tgz 40 will _not_ work, while tar -xffilename.tgz -z -b40 -v presumably would (have no time to test this right now). -- David Kastrup - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html