имя каталога bash с пробелом в CDPATH

имя каталога bash с пробелом в CDPATH

Я пытаюсь задать сочетание клавиш, чтобы мне не приходилось так часто вводить очень длинное имя каталога. В ~/.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.

Связанный контент