Я пытаюсь записать сценарий, но я застреваю здесь. См. код!
aug@august:~/play$ for i in {1..100..4}
> do
> echo "august"
> touch august $i+$2
> mkdir dir
Там какой-либо путь состоит в том, чтобы пойти предыдущая строка? Я подразумеваю, что была опечатка, я выполнил touch august $i+$2
. Клавиша ENTER Ipressed, таким образом, я пошел для новой строки. Как я могу возвратиться к предыдущей строке?
bash
редактор командной строки не поддерживает это, или делает как , anwar предлагает, или сохраните все на одной строке разделенным точками с запятой или поместите ее в файл сценария.
На ноте стороны, zsh
имеет функции та справка с этим. zsh
строчный редактор (zle
) является более полно известным редактором и поддержками, перемещающимися в рамках многострочной команды. Когда команда становится слишком длинной для обработки в zle
, она имеет встроенную функцию, edit-command-line
, который открывает командную строку в любимом редакторе. Это обычно не связывается, попробуйте:
bindkey "^[e" edit-command-line
Alt-e должен теперь активировать его, сохранить и выйти для возвращения к командной строке.
как объяснено здесь , в ударе у Вас есть Команды для Управления Историей, как указано в, он является ручным. Один из них edit-and-execute-command
.
Это откроет Вашего редактора с Вашими командами, уже введенными во временном файле, и можно исправить предыдущие строки легко. Можно достигнуть этого в emacs режиме C-xC-e
и vi режиме путем нажатия v
в нормальном режиме.
edit-and-execute-command (C-xC-e)
Вызывают редактора на текущую командную строку и выполняют результат как команды оболочки. Bash пытается вызвать $VISUAL, $EDITOR и emacs как редактор, в том порядке.
После нажатия Вводят и получил сообщение об ошибке, можно просто возвратиться в истории:
Просто нажимают в † ‘, вводят Вашу клавиатуру для фиксации опечатки. Если Вы нажимаете в †‘ вводят, терминал покажет Вам эту строку:
for i in {1..100..4}; do echo "august"; touch august $i+$2; mkdir;
Исправляют введенный с опечаткой материал приблизительно touch august $i+$2
и добавляют done
в конце команды.
Затем совершает нападки , Вводят ключ. Это должно решить Вашу проблему.
Это - то, что работало на меня.
CTRL + C от тока command
. Затем нажмите ↑ . Теперь можно отредактировать, какой бы ни строка Вы хотите путем перемещения с arrow buttons
- ← ↑ → или ↓ .
Удачи...