How to pass Python command line options (vs arguments) when running script directly vs via Python interpreter?
Ben Finney
ben+python at benfinney.id.au
Wed Aug 15 20:55:07 EDT 2018
David Raymond <David.Raymond at tomtom.com> writes:
> So what are you saying is an option vs an argument? Because I see no
> distinction whatsoever.
The command-line conventions do recognise the distinction.
* A command-line argument specifies input to the program.
For example, the destination file for a ‘cp’ command is specified as
the final argument to that command.
* A command-line option specifies a modifier to the program's behaviour.
For example, the ‘--force’ option for a ‘cp’ command modifies the
behaviour to remove the destination file if it already exists.
> When you run something you give it a bunch of strings.
Sure, command-line arguments and options are specified as strings. That
doesn't erase the distinction; it just means there is a category they
both belong to.
> That's it.
You can claim to not see the distinction, but that's athwart existing
convention, and you'll need to accept that there *is* such a distinction
in the specification of a great many programs.
> There is nothing magical about putting a dash in front of a letter,
Convention is not magical, true. Specifying options with a leading
hyphen is arbitrary.
That doesn't make it meaningless; the convention exists and is very
normal.
<URL:https://en.wikipedia.org/wiki/Command-line_interface#Arguments>
--
\ “In the long run, the utility of all non-Free software |
`\ approaches zero. All non-Free software is a dead end.” —Mark |
_o__) Pilgrim, 2006 |
Ben Finney
More information about the Python-list
mailing list