Я часто работаю в процессе в терминале, я установил некоторые переменные и использовал cd
и так далее. Тогда я бы хотел открыть еще одно окно терминала. Есть какой-либо способ сделать это?
5 ответов
Что вы могли бы сделать, это следующее.
Получить текущую среду в вашем буфере обмена:
env | pbcopy
Откройте новое окно терминала и экспортируйте эти переменные среды
for env in `pbpaste`; do export $env; done
И чтобы облегчить процесс, вы всегда можете использовать псевдоним, например, так
alias get_env="env | pbcopy"
alias set_env="for env in `pbpaste`; do export $env; done"
Так что все, что вам нужно сделать, это
Команда get_env +N set_env
Вы можете использовать этот маленький скрипт, чтобы делать то, что вы хотите:
#!/bin/sh
osascript <<END
tell app "Terminal" to do script "cd \"`pwd`\""
END
поместите его в одну из папок на вашем пути, сделайте его исполняемым (chmod +x filename
) и запустите rehash. Затем вы можете запустить имя этого скрипта, чтобы открыть новое окно терминала в том же каталоге.
open -a Terminal .
должен сделать свое дело.
Он просто открывает текущий каталог .
с приложением Терминал.
Конечно, вы можете использовать любой относительный или абсолютный путь вместо .
такие как :
open -a Terminal .. # Parent directory
open -a Terminal ~/Documents # User's documents
open -a Terminal /Library # System library
Вы можете перейти к настройкам -> общая вкладка и посмотреть на настройку «открыть новую вкладку с помощью», вы можете настроить терминал на открытие новой вкладки в текущем рабочем каталоге.
Чтобы открыть новое окно терминала, вы можете открыть -n /Applications/Utilities/Terminal.app или также /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal & Хотя я не знаю, примут ли они такой аргумент, как as cd ~/Documents/
Оба они создают совершенно новые экземпляры, поэтому для перехода между ними на клавиатуре вы должны выполнить cmd+tab, а не cmd+`. И если вы собираетесь перейти к cmd+tab, он всегда помещает новый экземпляр в конец очереди, поэтому вам, возможно, придется сделать shift+cmd+tab