Não tenho certeza se você quer dizer - ou -- , então aqui estão algumas informações sobre ambos:
- é uma abreviação que alguns programas aceitam para se referir a STDIN , a entrada padrão do programa. Ou seja, em um pipeline como echo foo | cat - (embora - seja realmente desnecessário nessa instância), cat recebe "foo" e uma nova linha como sua entrada de STDIN .
-- indica o final dos argumentos. Em programas que lidam com arquivos, isso geralmente significa que o que se segue será apenas nomes de arquivos, e não, digamos, opções de linha de comando. Em tal instância, é usado para tentar contornar nomes de arquivos que se parecem com opções (por exemplo, se você tiver um arquivo chamado -e e um programa também aceita um argumento -e ). Outra maneira de contornar isso é fazer algo como command ./-e , que na verdade é mais compatível entre os programas, pois não requer que o programa subjacente implemente o processamento -- .