Freqüentemente --
é usado na linha de comando para sinalizar para um programa que não haverá mais opções de comando disponíveis. Isso é particularmente útil se um arquivo contiver um traço, que o programa tentaria interpretar como uma opção.
-
Sem o
--
, há um erro gerado:$ pdfgrep -i posix -find.pdf -xorg.pdf pdfgrep: invalid option -- 'f' pdfgrep: invalid option -- 'd' pdfgrep: invalid option -- '.' pdfgrep: invalid option -- 'p' pdfgrep: invalid option -- 'd' pdfgrep: invalid option -- 'f'
-
Com o
--
usado, temos um comando bem-sucedido:$ pdfgrep -i posix -- -find.pdf -xorg.pdf -find.pdf: on the command line. Currently-implemented types are emacs (this is the default), posix-awk, -find.pdf: posix-basic, posix-egrep and posix-extended. -find.pdf: posix-basic, posix-egrep and posix-extended. -find.pdf: posix-basic, posix-egrep and posix-extended.
-
pdfgrep
está programado para entender--
para indicar que os seguintes argumentos de linha de comando não são opções. A maioria dos programas faz o mesmo, mas nem todos os programas entendem--
. Para programas que não o fazem, a solução é prefixar o nome do arquivo com./
, assim:pdfgrep -i posix ./-find.pdf ./-xorg.pdf
Isso deve funcionar com qualquer comando, a menos que, por algum motivo, o comando não possa aceitar um caminho, apenas um nome de arquivo puro.
Para uma introdução geral à linha de comando, consulte este PDF útil .