Я использую Ubuntu 12.10 и хочу запустить набор команд в терминале, и, как я вижу в инструкциях, каждая из этих команд начинается с новой строки. Я не знаю, как это сделать в терминале. Я не могу найти, какую клавишу нажать для возврата каретки на следующую строку.
command-line
Дебби Пул
источник
источник
&&
вместо;
. Таким образом, если одна из команд не будет выполнена, остальные команды не будут выполнены. Итак, используя ваш пример, еслиhome
он не существует, вы не сможете случайно создатьtest
каталог в текущем каталоге.Ответы:
Команды, которые вы видите в каждой строке, должны выполняться по одной.
Поэтому после ввода строки нажмите Enter для выполнения, затем выполните следующую команду.
Пример:
Это две команды, которые должны быть выполнены одна за другой.
Выполнять сразу это будет похоже
sudo apt-get update && sudo apt-get upgrade
(есть и другие методы), но обычно это не требуется. Так что не волнуйся. Введите одну строку и нажмите Enter, это сделает свою работу.источник
Поскольку Web-E объясняет самый прямой способ сделать то, что вы хотите, с помощью двух разных команд, я подумал, что покажу, что есть несколько способов выполнить несколько команд или продолжить команды на другой строке без немедленного их выполнения.
Продолжая длинные команды:
1) Самый распространенный способ создать одну длинную команду - это ввести свои команды, затем использовать обратную косую черту
\
, нажать return, а затем Bash предоставит вам другое приглашение вместо выполнения команды. Это вторичное приглашение называется PS2 и ожидает вашего ввода:Вы можете продолжать добавлять обратную косую черту и нажимать клавишу возврата сколько угодно долго, пока вы думаете, что общая команда будет иметь смысл.
Вы можете отменить эту дополнительную подсказку с помощью обычного Ctrl+ C.
2) Bash распознает некоторые команды, такие как циклы for (для i in ....), и приглашение появится немедленно; как если бы вы пропустили кавычку в команде:
Несколько команд :
3) Как отмечает Lxnslck , вы можете разделять команды точкой с запятой:
4) Или вы можете использовать амперсанд
&&
для объединения двух команд:источник
Вы можете нажимать клавишу ВВОД после каждой строки, и если команда не завершена (например, команды mutiline, например,
for
циклы), терминал будет ждать, пока вы введете остальную часть команды. Если команда завершена, она будет выполнена, и вы введете следующую команду после, без проблем.Если вы копируете команды из учебника, вы можете скопировать всю группу команд и вставить ее непосредственно в терминал, и она будет работать.
источник
Когда это набор команд, которые вы ожидаете использовать более одного раза, вы должны поместить их в файл сценария bash . Например,
это то, что вы не хотели бы вводить когда-либо снова, но мне очень часто нужна именно эта последовательность команд. Таким образом, это происходит в файле с именем
1280x980-2head.sh
, вы можете создать его с любым редактором по вашему выбору. Для того, чтобы сделать этот скрипт исполняемым , вы поставите линию#!/bin/bash
перед всем (а притон ), и установить выполнения-разрешение:chmod +x 1280x980-2head.sh
. Затем просто набираем./128<tab>
(автозаполнение) и<enter>
выполняем все команды.источник
Вы можете поместить все в скобки; например:
Команды будут выполняться одна за другой в под-оболочке.
Если вы не хотите, чтобы они выполнялись в под-оболочке, вы можете поставить точку с запятой между командой и другой; например:
Вместо этого, если вы поместите «&&» между каждой командой, команда, которая следует за «&&», будет выполнена, только если предыдущая команда завершилась без ошибок, поэтому вам не нужно использовать ее для объединения команд; используйте вместо этого точку с запятой. И наоборот, если вы введете «||», следующая команда будет выполнена только в том случае, если первая команда завершится с ошибкой. Пример: (команда which проверяет, существует ли программа и не завершается ли с ошибкой)
источник