3

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

Возможные рабочие каталоги:

[user@host /]$ cd //
[user@host //]$ pwd # Results in double root
//
[user@host //]$ cd srv/ftp
[user@host ftp]$ pwd # Double root is preserved but no other effects observed
//srv/ftp
[user@host /]$ cd ////
[user@host /]$ cd ///////
[user@host /]$ cd ////////// # Additional slashes change nothing
[user@host /]$ 

Почему это происходит? Как это вообще действует?

(Замечено на хосте Linux 4.18.16-arch1-1-ARCH # 1 PREEMPT SMP 20 октября 22:06:45 UTC 2018 x86_64 GNU/Linux)

1 ответ1

0

Ну я нашел ответ после лучшего поиска, получается:

Допускается несколько косых черт, и они эквивалентны одной косой черте. Из спецификации Single Unix (версия 3), базовые определения §3.266 pathname: «Несколько последовательных слешей считаются одинаковыми как один слеш».

Есть одно исключение: если имя пути начинается ровно с двух слешей, оно может обрабатываться по-разному (см .: базовые определения §4.11 разрешение имени пути). Сам Linux не делает этого, хотя некоторые приложения могут, а другие системы Unix-ish (например, Cygwin).

Источник: https://unix.stackexchange.com/a/1919/276644

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