Я пишу свою собственную программу оболочки. В настоящее время я реализую команду cd, используя chdir. Я хочу реализовать chdir со следующими параметрами:
-P Не переходить по символическим ссылкам
-L Следовать по символическим ссылкам (по умолчанию)
Я разместил здесь вопрос , спрашивая, есть ли путь — это символическая ссылка или фактический путь. Но с этой информацией я не могу понять, как решить вышеуказанную проблему.
Спасибо
cd -P
иcd -L
(по умолчаниюcd -L
). Когда вы выполнилиcd -P
,cd ..
поднимает вас вверх по иерархии физической файловой системы, даже если вы перешли туда по символической ссылке, но если вы выполнилиcd -L
, чтобы попасть туда, тоcd ..
отсекает один элемент от имени файла символическая ссылка, чтобы поднять вас на уровень выше. - person Jonathan Leffler   schedule 11.02.2014