Почему в именах переменных среды Windows используется специальный escape-символ? - PullRequest
5 голосов
/ 19 апреля 2010

Мне любопытно, есть ли какая-то история, почему символ ^ используется для экранирования специальных символов <, >, |, & и ^ в именах переменных среды в Вместо этого в Windows используется символ \, который обычно используется для экранирования специальных символов.

Обратите внимание, что я понимаю, что для этого не может быть никаких причин, но мне было бы интересно узнать, есть ли причина.

1 Ответ

5 голосов
/ 19 апреля 2010

'\' - это символ, обычно используемый для экранирования специальных символов в системах Unix (или язык C, или любой язык, вдохновленный C). Что удобно, потому что это более или менее единственное использование этого символа в этих системах / языках.

Windows, с другой стороны, происходит из наследия CP / M, которое использует «\» в качестве разделителя пути. ( Edit: Не совсем правильно, см. Комментарий ниже.) Необходимость избегать разделителя пути в каждом случае была бы немного неудобной, и я думаю (!!), поэтому они выбрали другой escape-символ.

...