
너무 긴 디렉터리 이름을 자주 입력하지 않아도 되도록 바로가기를 설정하려고 합니다. 에서는 ~/.bash_profile
다음과 유사한 작업을 수행합니다.
export CDPATH=".:~:/This/Is/A/Really/Long/Path/That/Ends/With/My Name"
이 변수를 설정하려고 할 때 디렉터리 이름의 공백을 어떻게 이스케이프/보존합니까?
나는 다양한 솔루션을 시도했습니다 (작은 따옴표 대 큰 따옴표 사용, 백 슬래시로 이스케이프 처리 (시도했습니다 'My\\\ Name'
), 따옴표 없음 및 해당 옵션의 조합).
그라시아스.
답변1
export CDPATH=".:~:/This/Is/A/Really/Long/Path/That/Ends/With/My Name"
괜찮을거야
난 노력 했어
cd /tmp/
mkdir "aaa bbb"
mkdir "aaa bbb/a" "aaa bbb/b"
export CDPATH="/tmp/aaa bbb"
그리고
cd a
잘 작동해요
또한 디렉토리를 더 빠르게 변경하려면 별칭을 만들 수 있습니다.
alias longpath="cd '/This/Is/A/Really/Long/Path/That/Ends/With/My Name'"
하지만 해당 디렉토리에 복사하는 문제는 해결되지 않습니다.
cp longpath
작동하지 않습니다.
어쩌면 제대로 작동하지 않을 수도 있으므로 bash-completion을 설치하고 활성화해야 합니다. 이는 _cd 함수를 정의하고 이를 cd 명령의 완성자로 설정합니다. 이는 기본 완성을 무시하고 $CDPATH를 포함합니다.