![Скопируйте и вставьте многострочную команду в командную строку](https://rvso.com/image/1451220/%D0%A1%D0%BA%D0%BE%D0%BF%D0%B8%D1%80%D1%83%D0%B9%D1%82%D0%B5%20%D0%B8%20%D0%B2%D1%81%D1%82%D0%B0%D0%B2%D1%8C%D1%82%D0%B5%20%D0%BC%D0%BD%D0%BE%D0%B3%D0%BE%D1%81%D1%82%D1%80%D0%BE%D1%87%D0%BD%D1%83%D1%8E%20%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%83%20%D0%B2%20%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%BD%D1%83%D1%8E%20%D1%81%D1%82%D1%80%D0%BE%D0%BA%D1%83.png)
Я пишу документ об установке моего программного обеспечения и мне нужно написать что-то вроде
Пожалуйста, сделайте следующее:
sudo apt-get update sudo apt-get install python-dev cython portaudio19-dev
Идея такова: люди собираютсякопировать вставить эти две линии в их bash
и затем ударил ENTER.
Какой есть чистый способ написания многострочных команд, которые можно будет скопировать/вставить в bash?
sudo apt-get update
sudo apt-get install python-dev cython portaudio19-dev
или
sudo apt-get update ;
sudo apt-get install python-dev cython portaudio19-dev
или
sudo apt-get update &&
sudo apt-get install python-dev cython portaudio19-dev
или что-то другое?
Примечание: конечно, я мог бы предоставить .sh
скрипт, но здесь вопрос скорее в следующем: как правильно написать многострочную команду, чтобы она работала при копировании/вставке.
решение1
Первый вариант вряд ли сработает вообще.
Вариант второй, ;
но учтите, что он говорит: «Выполняйте команды одну за другой».независимо отот того, была ли первая команда выполнена успешно. Так что если первая команда не удалась, вторая команда будет выполнена в любом случае.
Третий вариант, &&
который в вашем примере означает выполнение второй командытолькоесли первая команда была успешной.
решение2
Вам не нужно делать ничего особенного, CLI видит невидимый возврат каретки и переходит на следующую строку. Просто выделите, скопируйте и вставьте!
решение3
Я думаю, лучше всего 3-й. С первым и вторым будут выполнены все команды, кроме последней. Затем вам придется снова нажать Enter.
решение4
Лично я использую двойной амперсанд ( &&
) и держу все в одной строке, если печатаю. Если я копирую и вставляю в окно PuTTY, то я могу просто скопировать и вставить, и все команды будут выполнены, как если бы я их ввел и нажимал Enterвручную после каждой строки.
Дополнительная замечательная вещь в том, &&
что команда остановится, если возникнет ошибка, и не продолжит выполнение. Это позволяет мне увидеть, в какой части была ошибка, и исправить ее (опечатка? Неправильный рабочий каталог? Не root [моя компания не использует sudo
-.-]?).