삭제될 때까지 유지될 디렉터리에 대한 변수를 만듭니다.

삭제될 때까지 유지될 디렉터리에 대한 변수를 만듭니다.

저는 현재 Ubuntu에서 bash를 사용하고 있으며 종종 /home/me/path/to/project_dir에 저장된 디렉토리로 작업합니다. Bash를 열 때마다 이 디렉터리로 전환해야 하는 것은 번거롭습니다. 그래서 경로를 변수(예: )에 저장하여 projdir를 실행할 수 있도록 하고 싶습니다 cd projdir. 작업 디렉터리가 변경되면 변수를 재정의하여 경로를 변경할 수 있어야 합니다. 나는 .bashrc를 망칠 필요 없이 단 하나의 명령으로 쉽게 변수를 업데이트할 수 있기를 원합니다.

한 가지 중요한 점은 bash를 다시 시작해도 이 변수가 지속되어야 한다는 것입니다. 어떻게 해야 하나요? Bash를 시작할 때 여전히 내 홈 디렉터리를 보고 싶기 때문에 기본 시작 디렉터리를 project_dir로 변경할 수 없습니다.

답변1

CDPATH 에 있는 내용을 살펴보는 것만으로도 man bash충분할 수 있습니다 .

그렇지 않으면 .bashrc에 일부 별칭을 정의하세요. 나는 다음을 추천합니다:

alias setp='pwd >~/.projectdir'
alias gop='cd $(cat ~/.projectdir)'

답변2

echo 'PROJDIR="/home/me/path/to/project_dir"' > ~/.projdir
# put the next in e.g. .bashrc
projdir () {
  . ~/.projdir
  cd "$PROJDIR"
}
# change into directory simply by
projdir
# if dir changes just repeat
echo 'PROJDIR="/home/me/path/to/other_project_dir"' > ~/.projdir
# and instantly this works from all shells / consoles:
projdir

답변3

홈 디렉터리에 심볼릭 링크를 만듭니다.

ln -s path/to/project_dir ~/p

cd p프로젝트 디렉터리로 전환하려면 실행하세요 .

하지만 이는 다소 번거로운 방법이다. 하나의 셸을 실행하고 원하는 디렉터리로 변경한 다음 실행하여 다른 셸을 시작할 수 있습니다 xterm & disown( xterm원하는 터미널 에뮬레이터 교체).

관련 정보