![Copie e cole um comando multilinha na linha de comando](https://rvso.com/image/1451220/Copie%20e%20cole%20um%20comando%20multilinha%20na%20linha%20de%20comando.png)
Estou escrevendo um documento sobre a instalação do meu software e tenho que escrever coisas como
Faça o seguinte:
sudo apt-get update sudo apt-get install python-dev cython portaudio19-dev
A ideia é: as pessoas vãocopiar colar essas duas linhas em suas bash
e então aperte ENTER.
Qual é uma maneira limpa de escrever comandos multilinhas, de modo que sejam copiados/colados no bash?
sudo apt-get update
sudo apt-get install python-dev cython portaudio19-dev
ou
sudo apt-get update ;
sudo apt-get install python-dev cython portaudio19-dev
ou
sudo apt-get update &&
sudo apt-get install python-dev cython portaudio19-dev
ou alguma outra coisa?
Nota: claro, eu poderia fornecer um .sh
script, mas aqui a questão é mais sobre: qual é uma maneira limpa de escrever um comando multilinha, de forma que funcione ao copiar/colar.
Responder1
O primeiro não vai funcionar em geral, se é que vai funcionar.
A opção dois é ;
reconhecer que diz executar comando um após o outroindependentementede saber se o primeiro foi executado com sucesso. Portanto, se o primeiro comando falhasse, o segundo seria executado de qualquer maneira.
A opção três é &&
o que significa no seu exemplo, executar o segundo comandoapenasse o primeiro comando foi bem-sucedido.
Responder2
Você não precisa fazer nada de especial, a CLI vê o retorno de carro invisível e depois vai para a próxima linha. Basta destacar, copiar e colar!
Responder3
O melhor é o terceiro, eu acho. Com o primeiro e o segundo, todos os comandos, exceto o último, serão executados. Então você terá que pressionar Enter novamente.
Responder4
Eu pessoalmente uso o e comercial duplo ( &&
) e mantenho tudo em uma única linha se estiver digitando. Se estou copiando e colando em uma janela do PuTTY, posso simplesmente copiar e colar, e todos os comandos serão executados, como se eu os tivesse digitado e pressionado Entermanualmente após cada linha.
A vantagem adicional &&
é que o comando será interrompido se houver um erro e não continuará. Isso me permite ver qual parte estava errada e corrigi-la (erro de digitação? Diretório de trabalho errado? Não é root [minha empresa não usa sudo
-.-]?).