Я использую Ubuntu 12.10 и хочу запустить набор команд в терминале, и, как я вижу в инструкциях, каждая из этих команд начинается с новой строки. Я не знаю, как это сделать в терминале. Я не могу найти, какую клавишу нажать для возврата каретки на следующую строку.
Команды, которые вы видите в каждой строке, должны выполняться по одной.
Итак, после ввода строки нажмите Enter для выполнения, затем выполните следующую команду.
Пример:
sudo apt-get update
sudo apt-get upgrade
Это две команды, которые должны выполняться одна за другой.
Выполнение сразу будет похоже на sudo apt-get update && sudo apt-get upgrade
(есть и другие методы), но обычно это не требуется. Так что не волнуйся. Введите одну строку и нажмите Enter, она выполнит свою работу.
Поскольку сеть-E объясняет самый прямой способ сделать то, что Вы хотите с двумя различными командами, я думал, что покажу, что существует много способов выполнить несколько команд или продолжить команды на другую строку, сразу не выполняя их.
Продолжение долгих команд:
1) Наиболее распространенный способ создать одну долгую команду состоит в том, чтобы ввести Ваши команды, затем использовать обратную косую черту \
, нажмите возврат, и затем Bash предоставит другую подсказку Вам вместо того, чтобы выполнить команду. Эту вторичную подсказку называют PS2 и ожидает Вашего входа:
find /home/mike/Downloads -type f -iname '*.jpg' \
>
Можно продолжить добавлять обратные косые черты и нажимать возврат, пока Вы хотите, пока Вы думаете, что полная команда будет иметь смысл.
Можно отменить эту вторичную подсказку с обычным Ctrl+C.
2) Bash распознает некоторые команды такие что касается циклов (поскольку я в....), и подсказка сразу появится; так же, как это будет при пропавших без вести кавычки от команды:
apt-cache search 'libgimp*
>
Несколько команд:
3) Как примечания Lxnslck, можно разделить команды с точками с запятой:
which vlc; whereis vlc
/usr/bin/vlc
vlc: /usr/bin/vlc /etc/vlc /usr/lib/vlc /usr/bin/X11/vlc /usr/share/vlc /usr/share/man/man1/vlc.1.gz
4) Или можно использовать амперсанд &&
присоединиться к двум командам:
./configure && make
Когда это набор команд, которые вы ожидаете использовать более одного раза, вы должны поместить их в файл сценария bash . Например,
xrandr --newmode "1280x960_80.00" 139.25 1280 1368 1504 1728 960 963 967 1008 -hsync +vsync
xrandr --verbose --addmode VGA1 "1280x960_80.00"
xrandr --output HDMI1 --off --output LVDS1 --mode 1366x768 --pos 1280x512 --rotate normal --output DP1 --off --output VGA1 --mode "1280x960_80.00" --pos 0x0 --rotate normal
sleep 3
xfce4-panel -r
- это не то, что вы хотели бы вводить когда-либо снова, но мне случается, что эта последовательность команд очень часто нужна. Таким образом, это происходит в файле с именем 1280x980-2head.sh
, вы можете создать его с любым редактором по вашему выбору. Чтобы сделать этот скрипт исполняемым , вы ставите строку #!/bin/bash
перед всем ( шебанг ) и устанавливаете разрешение на выполнение: chmod +x 1280x980-2head.sh
. Затем, просто набрав ./128<tab>
(автозаполнение) и <enter>
, выполните все команды.
Вы можете поместить все в скобки; например:
(sudo add-apt-repository ppa:foo/bar
sudo apt-get update
sudo apt-get install my-package)
Команды будут выполняться одна за другой в под-оболочке.
Если вы не хотите, чтобы они выполнялись в под-оболочке, вы можете поставить точку с запятой между командой и другой; например:
sudo add-apt-repository ppa:foo/bar; sudo apt-get update; sudo apt-get install my-package
Вместо этого, если вы поставите "& amp; & amp;" между каждой командой, команда, которая следует за "& amp;" будет выполняться только , если предыдущая команда завершилась без ошибок, поэтому вам не нужно использовать ее для объединения команд; используйте вместо этого точку с запятой. И наоборот, если вы введете «||», следующая команда будет выполнена только в том случае, если первая команда завершится с ошибкой. Пример: (команда which проверяет, существует ли программа и не выходит ли с ошибкой)
which apt-get && echo "No error" || echo "Error" # Will print "No error"
which jdhdsd && echo "No error" || echo "Error" # Will print "Error"
Вы можете нажимать клавишу ВВОД после каждой строки, и если команда не прервана (например, команды mutiline, например, циклы for
), терминал будет ждать, пока вы введете остальную часть команды. Если команда завершена, она будет выполнена, и вы введете следующую команду после, без проблем.
Если вы копируете команды из учебника, вы можете скопировать всю группу команд и вставить ее непосредственно в терминал, и она будет работать.
Обратная косая черта (\) и Enter — это то, что вам нужно. Пример:
Shell:> command --param1 paramValue \
--param2 paramValue \
--param3 paramValue \
Когда вы нажмете «ввод» после «\», команда будет продолжена, но с новой строки.