It signals the end of command options, after which only positional parameters are accepted.
Example use: lets say you want to grep a file for the string -v
- normally -v
will be considered
the option to reverse the matching meaning (only show lines that do not match), but with --
you can grep
for string -v like this
grep -- -v file