Manipulando um nome de arquivo opcional no shell [duplicado]

5

Devido a opções incompatíveis quando eu estava tentando executar um comando, eu tenho um arquivo de log chamado -w em um diretório. Quero ver seu conteúdo com cat (ou less ) e excluí-lo.

Eu tentei escapar com barras invertidas, aspas simples, aspas duplas, parênteses e backticks, mas cat sempre reclama que w é uma opção desconhecida.

Como posso referenciar este arquivo corretamente?

    
por user394 12.08.2011 / 15:22

2 respostas

6

Quase todos os comandos permitem -- como separador entre os parâmetros de opções e os parâmetros posicionais. Você pode usar o seguinte:

cat -- -w
rm -f -- -w
    
por 12.08.2011 / 15:29
4

Prefixe-o com o caminho. Por exemplo:

cat /home/whatever/-w
rm /home/whatever/-w
    
por 12.08.2011 / 15:25