cd
является внутренней оболочкой, т.е. оболочка обрабатывает изменение самой директории. действие по умолчанию внутренней версии оболочки cd
- логически сказать, где вы находитесь. Другими словами, если вы cd
ссылаетесь на символическую c, cd
сообщит название символической c ссылки, а не фактический каталог. Вы можете изменить это, введя cd -P
.
/usr/bin/cd
- это двоичный файл, который меняет ваш рабочий каталог. Его поведение по умолчанию - показать вам реальный каталог, в котором вы находитесь.
Единственная реальная цель /usr/bin/cd
- это иметь возможность exec
команду, чтобы получить код выхода, чтобы выяснить, является ли он можно перейти в каталог.