O que acontece quando eu uso o comando ssh como substituição de comando no echo

0

Eu fui um pouco louco ...

Veja o que eu fiz

 echo 'ssh [email protected]'

Em seguida, ele pediu senha e eu entrei e mais tarde foi atingido lá.

Espero que o eco esteja bloqueado aqui. Está correto?

Por favor, explique o que aconteceu exatamente aqui, passo-a-passo.

    
por Ramana Reddy 09.09.2015 / 07:49

1 resposta

4

% bl0ck_qu0te%

Uma substituição de comando é sempre processada antes do comando "final" (neste caso, "externo") ser executado.

Portanto, echo não está "bloqueado", mas está aguardando o comando dentro da substituição do comando terminar sua execução, o que nunca acontece porque o comando em si gera um shell interativo ssh .

Você pode verificar isso de várias maneiras, por exemplo, pressionando Ctrl + D , digitando exit e pressionando Enter ou abrindo outra instância de terminal e executando:

pkill -15 -x ssh

Como você pode ver, encerrar a instância ssh por qualquer meio permitirá que a substituição do comando termine sua execução, finalmente permitindo que o comando echo seja executado em sua saída, que neste caso não é nada.

    
por kos 09.09.2015 / 08:39