Я пробовал много чего. Смотрите ниже:
Как записать в каталог с пробелом в названии?
Попытка попасть в каталог: /cygdrive/с/Пользователи/мои ДМО/Документы
$ DOCS="/cygdrive/c/Users/my\ dir/Documents"
$ echo $DOCS
/cygdrive/c/Users/my\ dir/Documents
$ cd $DOCS
-bash: cd: /cygdrive/c/Users/my\: No such file or directory
$ cd /cygdrive/c/Users/my\ dir/Documents
(success)
Очень странное поведение. Когда я вручную ввожу его, backspace выполняет свою функцию escape-символа. Но не тогда, когда я использую расширение параметра с переменной DOCS.
Я пробовал другие варианты, такие как обратная косая черта.
$ DOCS=/cygdrive/c/Users/Rahman\ dir/Documents
$ echo $DOCS
/cygdrive/c/Users/my dir/Documents
$ cd $DOCS
-bash: cd: /cygdrive/c/Users/my: No such file or directory
или
$ DOCS="/cygdrive/c/Users/my dir/Documents"
$ echo $DOCS
/cygdrive/c/Users/my dir/Documents
$ cd $DOCS
-bash: cd: /cygdrive/c/Users/my: No such file or directory
Я знаю, что это возможно. См. Здесь:
$ echo $HOME
/home/my dir
[EDIT] Как указано, cd $ HOME также не работает. котировки должны быть размещены вокруг него.
Какого черта:
$ DOCS="\"/cygdrive/c/Users/my dir/Documents\""
$ echo $DOCS
"/cygdrive/c/Users/my dir/Documents"
$ cd $DOCS
-bash: cd: "/cygdrive/c/Users/my: No such file or directory
Не избежать пространства, но добавьте кавычки: 'DOCS = "/ cygdrive/c/Users/my dir/Documents" ' – Floris
Нет разницы. Я отредактировал выше, поэтому в пространстве нет выхода. – user2316667
Никакой реальной разницы, если я уйду из пространства, используя обратную косую черту или кавычки, но я все равно повторил. См. Ревизию. – user2316667