Em parte, esta é uma duplicata de o que significa duplo traço .
Você faz uma pergunta interessante sobre lxc
, então deixe-me responder isso. Nos dois exemplos, as duas instâncias de --
informam lxc
para não interpretar as opções depois desse ponto. O posicionamento diferente neste caso é irrelevante. No entanto, como você está executando uma linha de comando em um contêiner, convém usar --
como parte dessa linha de comando. Considere o seguinte: Eu criei um arquivo /tmp/bar
contendo a linha --foo
. Os seguintes comandos foram executados no contêiner:
root@myContainer:~# echo "here is --foo" >/tmp/bar
root@myContainer:~# echo "this line has no double dash" >> /tmp/bar
root@myContainer:~# cat /tmp/bar
here is --foo
this line has no double dash
root@myContainer:~# exit
Agora vou procurar por isso usando grep
. Preciso deixar grep
saber que --
faz parte do padrão de pesquisa, não uma opção para grep
:
$ lxc exec myContainer -- grep -- --foo /tmp/bar
here is --foo
Se eu usar um único --
, ele será consumido pela linha de comando lxc
e receberei o erro:
$ lxc exec myContainer grep -- --foo /tmp/bar
grep: unrecognized option '--foo'
Usage: grep [OPTION]... PATTERN [FILE]...
Try 'grep --help' for more information.