Почему двоеточие ( :) было выбрано в качестве разделителя пути?
Обратите внимание, что я имею в виду «разделитель пути», а не «разделитель каталогов». Разделитель пути - это символ, помещенный между записями в PATHпеременной среды.
PATH="/usr/local/sbin:/usr/local/bin:/usr/bin:..."
^ this symbol
Все в компьютерах и программном обеспечении когда-то было кем-то осознанным решением. Например, почему тильда представляет домашний каталог (и почему hjkl для клавиш направления в vi) . Мне нравится знать предысторию этого решения.
Несколько случайных фактов:
Наличие двоеточия в качестве разделителя пути означает, что каталог с двоеточием в имени не может быть добавлен в путь.
из POSIX:
Поскольку
<colon>в этом контексте является разделителем, имена каталогов, которые могут использоваться в PATH, не должны содержать<colon>символ.
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html
Кажется, что невозможно избежать толстой кишки. @ Random832 из Stack Overflow проверил исходный код, обрабатывающий PATH, и не обнаружил механизма выхода.
PATH до введения Unix версии 7 (в 1979 году) , но был :-delimited путь поиска еще в 1977. PWB / Unix (программист Workbench) используется в Mashey оболочке , написанной Джон Р. Машей , который хронологически попал между оболочкой Томпсона и оболочкой Борна. … (Продолжение)
pпредставляет собой путь поиска (называемый «последовательность поиска в каталоге Shell для выполнения команды»), с каталогами, разделенными двоеточиями. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... Интересный факт: в то время, как оболочка Mashey обрабатывает .profileфайл, она также позволяет вам указать начальное $pзначение в файле с именем .path.


/etc/passwd(который также содержит пути в столбцах home и shell).