Doc: nitpick -- has no special meaning to shells

The shell (e.g. bash) does not interpret your `argv` - deciding which arguments to interpret as flags or whether your program even supports flags is entirely up to you.
This commit is contained in:
Andrey Bienkowski 2022-01-02 08:37:14 +00:00 committed by GitHub
parent 4ccc52203a
commit 43b00fa43e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -218,13 +218,19 @@ done
```
### Edge cases
replace/-with string needs extra `--` before it, if starts with double-minus
(this is a limitation of the bash itself)
sd will interpret every argument starting with `--` as a (potentially unknown) flag.
The common convention of using `--` to signal the end of flags is respected:
```bash
echo "test/test" | sd '/' -- '--inteneded--'
test--inteneded--test
$ echo "./hello foo" | sd "foo" "--world"
error: Found argument '--world' which wasn't expected, or isn't valid in this context
echo "start/--/end" | sd --string-mode -- '--' 'middle'
start/middle/end
USAGE:
sd [OPTIONS] <find> <replace-with> [files]...
For more information try --help
$ echo "./hello foo" | sd "foo" -- "--world"
./hello --world
$ echo "./hello --foo" | sd -- "--foo" "--world"
./hello --world
```