Page 1 of 1
linguistic issue: command line ..
Posted: Mon Feb 20, 2017 4:35 pm
by ggodw000
How do you distinguish command line switches, parameters, arguments and options.
I think they are used ambiguously a lot.
Re: linguistic issue: command line ..
Posted: Mon Feb 20, 2017 6:01 pm
by Rusky
In a more general sense, "parameter" usually refers to the formal declaration of an input to a function while "argument" refers to the actual concrete value assigned to a parameter.
Re: linguistic issue: command line ..
Posted: Mon Feb 20, 2017 9:36 pm
by alexfru
Users want commands with arguments.
So, you use spaces as argument delimiters.
Users want spaces within arguments (e.g. in file names).
So, you quote arguments.
Users want quotes (and about everything you can imagine) within arguments.
So, you use yet more quotes or some other form of escaping. Perhaps, escaping should've been introduced early on...
Users want your stuff to be compatible with and have a look and feel of what they're used to.
If you haven't felt screwed yet, you are now.
You might find this useful:
How Command Line Parameters Are Parsed by David Deley. Especially, if you're a fan of horror movies.
All that even before you start making sense of the command line.
Re: linguistic issue: command line ..
Posted: Tue Feb 21, 2017 2:15 am
by Solar
alexfru, the question was linguistic, not technical.
"Switch" implies on/off settings.
"Option" implies something is optional, i.e. you can build a valid command without using any of the options.
Rusky covered parameter vs. argument already.
But yes, many people don't really consider what exactly they are writing in their documentation or tutorial. Precise use of terminology is something of a hallmark of good documentation.
Re: linguistic issue: command line ..
Posted: Thu Nov 16, 2017 3:18 pm
by Wajideus
A command line consists of:
- A prompt - eg. "wajideus@wajideus-pc:~/current_directory$
- A command - eg "cp"
- Zero or more parameters
A parameter is either:
- An argument, which is typically the name of a file
- An option, which changes the behavior of a program
The program or script being executed determines which parameters are arguments and which parameters are options based on the presence of a switch; which is typically a prefix of '-'. '--', or '/'.
Re: linguistic issue: command line ..
Posted: Fri Dec 01, 2017 4:49 am
by ggodw000
OK just for the purpose of this discussion, let's assume all of these are same thing:)
1. command (which is part of shell or executable)
2. program
3. script
4. function
are same thing. It is easier to distinguish and not that confusing. The interest is what is after that (be it a command, program, script or function). For function, it is quite distinct because it is not what is after it rather it is usually what is withing the parenthesis.
So based on you guys' contributions:
parameter - format declaration of some sort of input.
swithes - takes on value of either on or off.
argument - actual concrete or literal value.
option - optional in that sense program/command or script can execute with or without.