다른 지역의 디렉터리 간을 쉽게 전환하는 기능 [복제]

다른 지역의 디렉터리 간을 쉽게 전환하는 기능 [복제]

저는 시스템 파일 트리에서 서로 멀리 떨어져 있는 두 디렉터리 사이를 자주 변경하는 일을 하고 있습니다.

어쨌든 각 명령에 일종의 짧은 이름을 할당하여 명령과 함께 사용하여 예를 들어 반복적으로 입력하는 대신 을 입력 cd할 수 있습니까 ?cd directoryAcd directoryBcd C:/A/Really/Long/File/Path/Name/Makes/My/Fingers/Hurt

답변1

~을 위한정확히두 개의 디렉토리, 사용cd -

$ cd /tmp
$ cd /var/tmp
$ cd -
/tmp
$ cd -
/var/tmp
$ cd -
/tmp

~에서bash(1):

논쟁-로 변환됩니다$OLDPWD 디렉토리를 변경하기 전에.

답변2

어쨌든 각각에 일종의 짧은 이름을 지정할 수 있나요?

물론 alias다음 명령을 사용할 수 있습니다.

alias directoryA='cd /path/to/directoryA'

directoryA그런 다음 명령 의 별칭 으로 사용됩니다 cd. 정말 간단해요 ;)

답변3

쉘 변수를 사용하겠습니다.

da=/really/long/path/to/directory/a
db=/other/really/long/path/to/directory/b

cd $da
cd $db

이 방법의 장점은 모든 명령에서 파일 경로 대신 $da 및 $db를 사용할 수 있다는 것입니다. 예를 들면 다음과 같습니다.

cp $da/file1 $db/file2

답변4

디렉토리(또는 파일)를 생성하여 약식 이름을 지정할 수 있습니다.심볼릭 링크그것에. 기호는 실제로 데이터를 포함하지 않지만 실제 데이터를 찾을 수 있는 다른 경로를 가리키는 디렉토리 항목입니다. 디렉토리 항목에 대한 작업(예: 생성, 이름 바꾸기, 삭제)은 기호 링크에서 작동하는 반면 내용에 대한 작업(예: 읽기, 쓰기 cd, ls디렉토리 등)은 링크 대상에서 작동합니다. 예를 들어 심볼릭 링크를 만듭니다.ln주문하다:

ln -s /A/Really/Long/File/Path/Name/Makes/My/Fingers/Hurt ~/hurt

따라서 cd ~/hurt기본적으로 /A/Really/Long/File/Path/Name/Makes/My/Fingers/Hurt. 쉘이 현재 작업 디렉토리를 기억하고 표시한다는 점에서 기본적으로 동일합니다 ~/hurt. 쉘이 심볼릭 링크를 잊도록 하려면 사용하십시오 cd -P ~/hurt.

특정 디렉토리의 하위 디렉토리를 자주 변경하는 경우 다음을 사용할 수 있습니다.CDPATH바꾸다. 상대 경로( 예: 명시적으로 또는 약어를 통해 cd로 시작하지 않는 인수 또는 값이 로 시작하는 변수) 로 실행하는 경우 존재하는 항목을 찾습니다. 를 사용하는 경우 (현재 디렉터리)를 먼저 입력하는 것이 좋습니다 . 그렇지 않으면 순진한 모습으로 인해 전혀 관련 없는 위치로 연결될 수 있습니다./~/CDPATHCDPATH.cd subdir

CDPATH=.:/A/Really/Long/File/Path/Name/Makes/My
cd Fingers/Hurt

쉘 내에서 변수로 약어를 정의할 수도 있습니다. $해당 값을 사용하려면 변수 이름 앞에 사용하세요. 변수 값에 공백과 같은 특수 문자가 포함된 경우 이를 사용할 때 큰따옴표를 사용해야 합니다(zsh 또는 Fish를 쉘로 사용하지 않는 한).

hurt=/A/Really/Long/File/Path/Name/Makes/My/Fingers/Hurt
cd $hurt
spaced='/A/Really Long/File Path Name/Makes My Fingers/Hurt'
cd "$spaced"

배쉬에서cdable_vars옵션을 사용하면 손가락으로 이 작업을 더 쉽게 수행할 수 있습니다..

경로의 구성 요소가 길면 완성 기능을 사용하세요. Tab열쇠가 낡지 않았다면 뭔가 잘못하고 있는 것입니다 . 최상의 결과를 얻으려면 여러 문자로 공통적으로 시작하는 많은 파일 이름을 사용하지 말고 대문자와 같이 입력하기 어려운 문자로 파일 이름을 시작하지 마십시오.

관련 정보