Ответ 1
Я просто тестировал, и кажется, что вы можете сделать это так же, как в bash !$
.
Я использую zsh с картой oh-my-zsh Робби Рассела. Как создать ярлык или что-то повторить последнюю часть команды?
например, если я набираю:
mv something in/this/difficult/to/type/directory
есть ли способ легко получить это: in/this/трудный /to/type/directory?
Я просто тестировал, и кажется, что вы можете сделать это так же, как в bash !$
.
!$
дает вам последний параметр предыдущей команды.
Пример:
$ echo hello world
hello world
$ echo !$
echo world
world
!*
дает вам ВСЕ аргументы последней команды.
Пример:
% echo hello world
hello world
% echo !*
(expands to)-> % echo hello world
hello world
add bindkey '\ e.' insert-last-word к вашему.zshrc
- sp3ctum, в комментарии здесь
Я тоже натолкнулся на это - я всегда использовал Alt.
для insert-last-word в bash. Найден, где oh-my-zsh переопределяет это.
В lib/key-bindings.zsh закомментируйте это, и он должен работать, как в bash:
bindkey -s '\e.' "..\n"
Если вы находитесь в bash или zsh, вы можете использовать !
оператор для восстановления аргументов предыдущей команды:
Если взять: echo abcd
в качестве примера
!$
- последний аргумент: d!:*
- все аргументы: abcd (можно сократить !*
)!:1
- первый аргумент: a (тот же, что и !^
)!:1-3
- аргументы от первого до третьего: abc!:2-$
- аргументы от второго до последнего: bcdЭтот последний вопрос ответит на вопрос, вы можете взять последнюю часть своей команды.
Примечание: $:0
- последняя выполненная команда, здесь это будет эхо в нашем примере
<esc>.
также работает из коробки с zsh
и oh-my-zsh
.