Pb с PATH объявить как переменную окружения - PullRequest
0 голосов
/ 07 июля 2011

Это мой первый пост здесь, поэтому позвольте мне сказать привет сообществу stackoverflow перед началом!

Вот моя проблема:

  • я хочу объявить PATH как переменную окружения в Cygwin
  • тогда я хочу иметь возможность использовать эту переменную в любой команде
  • трудности возникают, когда у меня есть символ пробела в ПУТИ

Вот что я пытаюсь без успеха:

$ export MYPATH=/cygdrive/c/Program\ Files/Autodesk/Maya2011/
$ echo $MYPATH
$ /cygdrive/c/Program Files/Autodesk/Maya2011/
$ cd $MYPATH
$ bash: cd: /cydrive/c/Program: No such file or directory

Я получаю точно такую ​​же ошибку со всеми этими различными синтаксами

$ export MYPATH="/cygdrive/c/Program Files/Autodesk/Maya2011/"

То же самое с этим

$ export MYPATH=$MYPATH"/cygdrive/c/Program Files/Autodesk/Maya2011/"

У меня больше нет идей ... так что, если вы, ребята, можете мне помочь, было бы здорово!

Приветствия

ск

1 Ответ

1 голос
/ 07 июля 2011

Вы должны использовать кавычки около $MYPATH так же, как если бы вы использовали cd при вводе пути вручную.

cd "$MYPATH"

эквивалентно

cd "/cygdrive/c/Program Files/Autodesk/Maya2011/"

Обратите внимание, что escape-символ '\' для пробела удаляется при установке $MYPATH, поэтому, когда $MYPATH расширяется до cd, пробел больше не экранируется. Также обратите внимание, что cygwin не понравится, если вы попытаетесь сбежать и из escape-символа:

export MYPATH=/cygdrive/c/Program\\\ Files/Autodesk/Maya2011/

Это фактически расширится до

/cygdrive/c/Program\ Files/Autodesk/Maya2011/

но cygwin будет кричать на вас за попытку использовать путь в стиле MS-DOS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...