12

На разных машинах Linux вы можете

cd /

а также

cd //

Оболочка скажет, что текущим каталогом является «/» или «//» после использования соответствующей команды.

Таким образом, вопрос: в чем разница между «/» и «//», и если ответ «нет разницы», то почему «//» отображается иначе, чем «/»

КСТАТИ

cd ///
cd ////
cd /////

Все результаты в оболочке говорят, что текущий каталог - '/'

Вот пример сеанса:

[user@host /]$ cd //
[user@host //]$ cd /
[user@host /]$ cd //
[user@host //]$ cd /
[user@host /]$

2 ответа2

14

Давайте спросим самого человека (Честер Рами):

E10) Почему «cd //» оставляет $ PWD как «//»?

POSIX.2 в своем описании 'cd' говорит, что три или более начальных слеша могут быть заменены одним слешем при канонизации текущего рабочего каталога.

Это, я полагаю, для исторической совместимости. Некоторые версии Unix и ранние сетевые файловые системы использовали пути в форме // имя хоста / путь для доступа к «пути» на сервере «имя хоста».

9

Это не настоящий каталог, это проблема, специфичная для bash. На него ссылаются в Проекте документации Linux.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .