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