다른 디렉토리에서 직접 디렉토리로 이동할 수있는 방법이 있습니까?


14

다른 디렉토리에서 직접 디렉토리로 이동할 수있는 방법이 있습니까? 예를 들어, 내가 루트에 있고 직접 하지 않고 currentProject로 가고 싶다고 가정 해 봅시다 .

cd dropbox/dev/currentProject



-root
  -dropbox
     -dev
        -currentProject

이 방법이 있습니까?

답변:


21

autojump 와 같은 것을 사용할 수 있습니다 . Autojump를 사용하면 j명령을 사용하여 자주 방문하는 디렉토리로 빠르게 이동할 수 있습니다 .

예를 들어 디렉토리에 몇 번 cd들어가면 다음 currentProject과 같이 이동할 수 있습니다.

j currentProject

디렉토리 이름의 일부만 사용할 수도 있습니다. 그래서 당신은 할 수 있습니다 :

j current

cdcurrentProject.


8

$ CDPATH에 공통 디렉토리를 추가 할 수도 있습니다.

export CDPATH=$HOME

예를 들어 cd시스템의 어느 곳에서나 홈 폴더의 모든 디렉토리로 이동할 수 있습니다.


7

이것은 귀하의 질문에 직접 대답하지는 않지만 디렉토리 사이를 많이 뛰어 넘을 것이라고 올바르게 추론하는 경우 GNU Screen 과 같은 터미널 멀티플렉서를 사용 하여 다른 디렉토리를 다른 창에서 열어 놓을 수 있습니다. 필요에 따라 전환하십시오. 개인적으로 Byobu를 사용 하여 화면 상단에 일부 기능을 추가합니다.


1
tmux 도 참조하십시오 .
Annika Backstrom

5

bash 프로필에서 별칭을 설정할 수 있습니다. 기본적으로 단어로 명령을 축약 할 수 있습니다. currentProject가 실제로 / dropbox / dev / currentProject를 가리 키도록 설정할 수 있습니다


4

홈 디렉토리에 원하는 링크를 만들 수 있습니다.

ln -s /dropbox/dev/currentProject ~/currentProject

이렇게하면 여전히 cd를 사용하고 있지만 전체 경로를 기억할 필요는 없습니다. 그냥 사용하십시오 :

cd ~/currentProject

링크 사용을 중지하면 삭제하십시오.

rm ~/currentProject

0

Wuffers가 위에서 언급했듯이 autojump가이 를 수행 할 수 있습니다. 이전에 방문한 디렉토리의 데이터베이스를 저장하고 j <a few letters in the directory path>해당 디렉토리로 이동하는 것과 같은 명령을 사용할 수 있습니다 . jc요구 사항을 충족해야하는 autojump에 대한 추가 명령이 있습니다 . jc현재 작업 디렉토리의 이전에 방문한 서브 디렉토리로 이동할 수 있습니다. 따라서 autojump 데이터베이스를 제거 할 때까지이 작업을 수행하려면 디렉토리를 한 번만 방문하면됩니다. 또한 대신에 직접 추가 할 수도 있습니다 autojump --add DIR(필요한 경우 디렉토리 트리 목록에서 추가 목록 작성).


0

bash 및 * csh에는 내장 명령 'pushd'및 'popd'가있어 디렉토리를 Last In First Out 스택 ( pushd [directory]) 으로 푸시 한 다음 'popd'를 사용하여 스택의 최상위 디렉토리로 빠르게 변경할 수 있습니다. 따라서 스택을로드 한 방법에 따라이 기능을 수행하기에 적합한 디렉토리 간을 신속하게 탐색 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.