답변:
사용 아 - 내 - zsh을 하고 추가 'OSX'플러그인 당신의 ~ / .zshrc 같은에서 :
plugins=(osx)
OSX의 터미널 앱을 사용하는 경우 terminalapp
플러그인도 추가해야합니다 . credit
plugins=(osx terminalapp)
iTerm을 사용하는 경우 구성 옵션을 설정해야합니다 ( 작동하려면 zsh 플러그인이 필요하지 않을 수도 있음 ). credit
환경 설정> 프로파일> 기본값> 일반> 작업 디렉토리> 이전 세션 디렉토리 재사용 옵션
그게 당신이해야 할 전부입니다!
rails
실행 중이라고 말하고 command-n을 통해 새 창을 열려고하면 홈 디렉토리로 돌아갑니다.
Mac OS X Lion에서 사용 가능한 다른 옵션은 내장 기능을 사용하는 것입니다. 현재 디렉토리를 찾기 위해 '이스케이프 시퀀스'를 사용합니다. 내 .zshrc에서 다음 명령을 사용하면 작동합니다.
precmd () {print -Pn "\e]2; %~/ \a"}
preexec () {print -Pn "\e]2; %~/ \a"}
PS1
Bash의 경우이 위키 에서 사용할 수도 있습니다 .
export PS1="\[\e]2;\u@\H \w\a\e[32;1m\]>\[\e[0m\] "
\e]2;
제목 표시 줄에 인쇄 할 이스케이프 시퀀스는 어디에 있습니까 ? 보인다 Terminal.app 거기에서 해당 정보를 얻고있다.
추가 정보:
/etc/bashrc
있는 file:
URL을 사용하여 작업 디렉토리의 터미널에 알리는 새로운 이스케이프 코드도 지원합니다 (창 / 탭 제목에는 ASCII 문자의 하위 집합 만 포함 할 수 있음) ).
\e]7;file://hostname/percent-encoded-pathname\a
chpwd () {print -Pn "\e]2; %~/ \a"}
?
이것은 bash에서 사용하고 zsh에서도 작동하는 매우 간단한 버전입니다. 모든 명령 (IMO가 너무 많이 손상되지 않음) 후에 현재 폴더를 파일에 저장하고 저장된 현재 폴더에서 새 터미널을 엽니 다.
.zshrc에 다음을 추가하십시오.
# emulate bash PROMPT_COMMAND (only for zsh)
precmd() { eval "$PROMPT_COMMAND" }
# open new terminal in same dir
PROMPT_COMMAND='pwd > "${HOME}/.cwd"'
[[ -f "${HOME}/.cwd" ]] && cd "$(< ${HOME}/.cwd)"
이것이 bash에서 수행하는 방법입니다.
이 셸 스크립트는 Terminal.app에 새 탭을 열고 현재 디렉토리로 전환하도록 (말 그대로 조용한 Applescript를 사용하여) 알려줍니다.
#!/bin/bash
osascript -e 'tell application "Terminal"' \
-e 'tell application "System Events" to tell process "Terminal" to keystroke "t" using command down' \
-e "do script with command \"cd `pwd`;clear\" in selected tab of the front window" \
-e 'end tell' &> /dev/null
… 위의 셸 스크립트를 $PATH
/ usr / local / bin 의 디렉토리에 넣고 실행 가능한지 확인하십시오.
$ chmod +x /usr/local/bin/nt
( 소스 )
새 탭을 열 때 디렉토리가 자동으로 변경되도록하려면 dirpersist 플러그인을 사용하십시오 .
osx 플러그인은 마지막 디렉토리 만 저장하지만 tab
새 탭을 열려면 명령을 실행해야하지만 항상 가능한 것은 아닙니다 (예 : 현재 탭에서 무언가를 실행중인 경우).
.zshrc에 terminalapp를 추가해도 효과가 없었으므로 플러그인을 찾아서 ~/.oh-my-zsh/plugins/terminalapp
알려줍니다.
# This file is intentionally empty.
#
# The terminalapp plugin is deprecated and may be removed in a future release.
# Its functionality has been folded in to the core lib/termsupport.zsh, which
# is loaded for all users. You can remove terminalapp from your $plugins list
# once all your systems are updated to the current version of Oh My Zsh.