Como manipulo um arquivo chamado - (ou seja, traço)?

0

Eu tenho um arquivo chamado -

Eu não sei de onde veio, mas eu gostaria de olhar dentro dele para descobrir mais sobre isso. No entanto, todos os comandos do Linux acham que estou me referindo à entrada padrão ou apenas me dão uma mensagem de erro quando uso - ou \- ou $'-' .

tail -
tail \-
tail $'-'
    
por Christopher Bottoms 28.04.2015 / 00:01

2 respostas

2

A maneira mais fácil é apenas usar uma representação do nome do arquivo que não seja literalmente - . Por exemplo:

tail ./-

(onde o ./ referencia explicitamente o diretório atual).

A propósito, essa também é a maneira mais fácil de impedir que os nomes de arquivos sejam interpretados como opções (por exemplo, para garantir que um arquivo chamado -f não seja interpretado como uma opção, use ./-f ).

    
por 28.04.2015 / 00:26
1

Tente isto:

ls -i

Você deve ver o numero do inode do arquivo:

10833498 -

Então

find . -inum 10833498 -exec tail '{}' \;

Isso encontra o arquivo com o inum e executa tail nele.

    
por 28.04.2015 / 00:07