Как открыть новое окно терминала для той же директории, что и текущее окно?

15

Когда у меня открыто окно терминала, ⌘N открывает новое.

Есть ли способ, чтобы текущий каталог в новом окне автоматически совпадал с тем, который был в окне, где я нажал ⌘N?

Bemmu
источник

Ответы:

16

Для этого в новом окне перейдите в «Настройки» в Terminal.app.

На вкладке Общие вы можете настроить поведение (вы, вероятно, хотите выбрать Тот же рабочий каталог ) как для новых окон, так и для новых вкладок.

Preferences

Scot
источник
О, похоже, я уже включил его, но, должно быть, как-то испортил его в моем .bashrc. Спасибо!
Bemmu
2
Три года спустя я обнаружил, что у меня просто есть какая-то команда cd в конце сказал .bashrc, после удаления, что это начало работать.
Bemmu
1
@ Бемму Ха. Рад, что вы разобрались - ждали ...;)
Scot
6

Если вы нажмете ⌘T в Терминале, откроется еще одна вкладка, которая будет в том же каталоге, что и раньше :-) Вы также можете легко переключаться между вкладками, используя сочетания клавиш - ⌘-Shift- [и ⌘-Shift-]

Наслаждайтесь!

Ambidextrous
источник
Это должно быть ответом.
CJWEB
Вы также можете перетащить вкладку в отдельное окно, если вы не хотите, чтобы вкладка
andynormancx
4

Проблема в том, что Терминал ничего не знает о том, в каком каталоге вы находитесь.

Но оболочка делает! Таким образом, вы можете ввести:

open -a /Applications/Utilities/Terminal.app .

и он откроет новое окно в вашем текущем каталоге.

Если вы хотите сделать это много, поместите следующее в ~/.bashrc:

alias openhere='open -a /Applications/Utilities/Terminal.app .'

Затем все, что вам нужно будет набрать openhere сделать то же самое.

Jan Steinman
источник
1
Терминал знает ваш каталог. Оболочка сообщает в Apple Terminal при каждом изменении каталога; код, который позволяет это в /etc/bashrc,
hamstergene
3

В Zshell мне нужно сделать обе эти настройки

enter image description here

и мне нужно это в моем .zshrc

# http://superuser.com/a/315029/4952
# Set Apple Terminal.app to resume directory... still necessary 2018-10-26
if [[ $TERM_PROGRAM == "Apple_Terminal" ]] && [[ -z "$INSIDE_EMACS" ]] {
  function chpwd {
    local SEARCH=' '
    local REPLACE='%20'
    local PWD_URL="file://$HOSTNAME${PWD//$SEARCH/$REPLACE}"
    printf '\e]7;%s\a' "$PWD_URL"
  }
  chpwd
}

Я пытался без одного или другого безрезультатно.

Dan Rosenstark
источник