O que o comando '..' faz? [duplicado]

2

Esta noite, eu acidentalmente digitei

.. blah

na linha de comando bash (Fedora 27, bash 4.4.12). Para minha surpresa, não (aparentemente) nada, mas não deu erro. Como vem?

Eu obtenho o mesmo efeito com .. sozinho, sem argumentos.

Eu queria saber se ele poderia ter sido tratado como . . , ou seja, fonte do diretório atual, mas quando eu tento isso, dá um erro dizer que . é um diretório.

Se eu tentar três pontos, sugiro tentar dois:

[james@melissa ~] $ ...
bash: ...: command not found...
Similar command is: '..'
[james@melissa ~] $ 

então certamente em algum nível acha que o comando existe. No entanto, não há man página para ele, e .. --help não fornece nenhuma saída.

Mas talvez o mais estranho de tudo, parece que se eu executar .. , com ou sem um argumento, eu recebo um código de saída 127, que é o código de saída para tentar executar um comando inexistente. Então, em algum nível, também acha que o comando não existe.

Ele não parece estar relacionado à existência de um diretório chamado .. ; ou, pelo menos, eu recebo um erro se eu digitar o nome de qualquer outro diretório sozinho, e .. não lança um erro mesmo se eu estiver no diretório raiz, onde não existe tal diretório como ..

Tudo o que posso imaginar é que não é realmente um comando, mas que a mensagem de erro está sendo suprimida por algum motivo.

Alguma outra ideia?

EDIT : este é o mesmo problema subjacente em post vinculado , embora com sintomas diferentes: lá, qualquer comando que comece com . silenciosamente falhará. Esse não é o caso aqui, onde apenas .. tem esse efeito. Parece que o bug foi parcialmente corrigido, mas não completamente.

    
por chiastic-security 24.01.2018 / 23:18

1 resposta

-1

Eu tentei isso no meu sistema (também usando o bash-4.4.12) e recebi -bash: ..: command not found , então não é intrínseco. Meu palpite é que você tem um apelido definido em algum lugar.

Para verificar se esse poderia ser o caso, tentei o seguinte:

# alias ..='echo Hello'
# ..
Hello
#
    
por 24.01.2018 / 23:28