As instruções de instalação estão um pouco quebradas.
Se o código de shell publicado fosse um script de shell, a parte && bash
teria sido essencialmente inútil, já que teria lançado um bash
interativo e ficado lá até o usuário sair do shell com Control - D ou exit
, depois retome a execução dos próximos comandos com o shell do usuário atual, seja o que for.
Mas, como você escreveu, espera-se que o usuário copie e cole o código. Nesse caso, o && bash
está lançando condicionalmente bash
se o mkdir
for bem-sucedido e, em seguida, as linhas restantes serão executadas por esse intérprete. Até aí tudo bem.
O primeiro problema é o que acontece no caso (improvável) em que o comando mkdir
falha. O interpretador bash
é não executado mas todas as linhas restantes , assumindo que todo o bloco de comandos shell foi copiado / colado, será executado de qualquer maneira . Além disso, eles serão executados por qualquer shell que o usuário esteja executando, possivelmente um que não entenda a expansão das chaves. Também haverá erros com todos os comandos referentes ao diretório ~/bin
ausente.
A segunda questão é que, mesmo no primeiro caso ( mkdir
sucede), a sequência de comandos é falsa, uma vez que assume que o usuário está em seu diretório inicial quando os comandos são iniciados, mas é claro que isso não é necessariamente o caso.