
Недавно я перешел на macOS с Windows, и раньше я использовал PowerShell. В PowerShell я мог ввести команду и нажать, ctrl/command a
и она выбирала все, что я написал, чтобы я мог скопировать/удалить это.
Когда я нажимаю command a
в терминале macOS, он выделяет все окно и не позволяет мне скопировать/удалить написанную мной строку.
Кто-нибудь знает, как просто выделить написанное и скопировать/удалить это?
решение1
Сочетания клавиш в стиле Emacs
Чтобы удалить все написанное, нажмите Ctrlu.
Если вы находитесь в начале очереди, нажмите Ctrlk.
Чтобы скопировать текст, вы можете использовать кольцо удаления:
- Введите что-нибудь в терминале
- Нажмите Ctrlu, чтобы удалить все (или Ctrlk)
- Нажмите Ctrly, чтобы вставить («сохранить») то, что вы только что удалили.
Вот некоторые из них:Сочетания клавиш Emacsкоторые macOS реализует для (большинства) текстовых полей. Их много, и их очень полезно выучить, так как с дополнительной Ctrlклавишей у вас есть доступ к большему количеству навигационных сочетаний клавиш.
Обратите внимание, что описанная выше операция копирования-вставки не работает.нетиспользуйте системный буфер обмена. Чтобы выделить всю строку, вы можете трижды щелкнуть по ней. Но это также будет включать любой префикс подсказки (например, $
), который вы могли настроить.
Альтернатива: iTerm2
Я бы отказался от Terminal.app и использовалiTerm2Вместо этого. Помимо многих других функций, которых нет в Terminal.app, он предлагаетРежим копирования( ⇧CmdC), что позволяет использовать клавиатуру для выбора.
Например, вы можете:
- Нажимать⇧CmdC
- Нажмите v, чтобы выбрать и всю строку
- Нажмите Ctrlkили , yчтобы скопировать выделение
- Нажмите Esc, чтобы выйти из режима копирования.
Теперь в вашем буфере обмена macOS будет содержимое того, что вы только что скопировали.