Unix представил / как разделитель каталогов где-то в 1970 году. Я не знаю, почему именно этот символ был выбран; Предок системы Multics используется >, но дизайнеры Unix уже использовали > вместе с < для перенаправления в оболочке (см. Почему корневой каталог обозначен / знак? ).
MS-DOS 2.0 введен \ в качестве разделителя каталогов в начале 1980-х годов. Причина / MS-DOS 1.0 (который вообще не поддерживал каталоги) уже использовался / ввести параметры командной строки. Потребовалось это использование / от CP / M который взял это у VMS , Вы можете прочитать более подробное объяснение того, почему был сделан этот выбор. в блоге Ларри Остермана (MS-DOS даже кратко имел возможность изменить опцию символа на - и разделитель каталогов для /, но это не прилипало).
/ это признается большинством API уровня программиста (во всех версиях DOS и Windows). Таким образом, вы можете часто, но не всегда сойти с рук с помощью / в качестве разделителя каталогов под Windows. Заметным исключением является то, что ты не можешь использовать / в качестве разделителя после \\? префикс который (даже в Windows 7) является единственным способом указать путь, используя Юникод или содержащий более 260 символов.
Поддержка некоторых элементов пользовательского интерфейса / в качестве разделителя каталогов под Windows, но не все. Некоторые программы просто передают имена файлов в базовый API, поэтому они поддерживают / а также \ индифферентно. В интерпретаторе команд (в command.com или же cmd ), ты можешь использовать / во многих случаях, но не всегда; это частично зависит от версии Windows (например, cd /windows работает в XP и 7, но не в Windows 9x). Поле ввода пути Explorer принимает / (по крайней мере, начиная с XP; возможно, потому что он также принимает URL-адреса). С другой стороны, стандартный диалог открытия файла отклоняет косые черты ,
/ распознается как разделитель каталогов командной строкой MS-DOS или Windows.
Tom Wijsman
1
"C: \ Windows \ System32 & gt; cd / windows / system" работает.
Andrew J. Brehm
@ TomWij: у вас есть ссылка на то, где именно / принимается в командной строке? Например, что делает dir /p делать? а также dir c:/p? а также c:/windows/notepad.exe? а также start /windows/notepad.exe? и т. д. (у меня нет машины Windows для тестирования.)
Gilles
2
/ вероятно, использовался в качестве разделителя каталогов в UNIX, потому что это был простой (не смещенный) ключ для удара по телетайпу. Не смещенные специальные символы были : - ; , . /,
Daniel R Hicks
2
Интересно, что я недавно перерыл источники и руководства DOS 1 и 2 и обнаружил, что Microsoft использовала / (а также - для коммутаторов), как Xenix, и вдохновлен Xenix, но IBM выпустила до того, как Microsoft отправила OEM-производителям, и IBM использовала ` (and / `для переключателей) и изменил приглашение A: в A> поэтому они изменили значение по умолчанию и отправили глючные / / - ) документация плюс примечание, что она была изменена и почему.
mirabilos
9
лежащий в основе Windows API может принимать обратную косую черту или косую черту для разделения каталогов и файловых компонентов пути, но соглашение Microsoft состоит в том, чтобы использовать обратную косую черту, а API, которые возвращают пути, помещают обратную косую черту.
MS-DOS 2.0 скопировал иерархическую файловую систему из Unix и, таким образом, использовал косую черту, но (возможно, по настоянию IBM ) добавили обратную косую черту, чтобы можно было вводить пути в командной оболочке, сохраняя совместимость MS-DOS 1.0 а также CP / M где косая черта была индикатором опции командной строки.
сравнить
dir/w
который показывает текущий каталог в широком формате против
Ответы:
Unix представил
/
как разделитель каталогов где-то в 1970 году. Я не знаю, почему именно этот символ был выбран; Предок системы Multics используется>
, но дизайнеры Unix уже использовали>
вместе с<
для перенаправления в оболочке (см. Почему корневой каталог обозначен/
знак? ).MS-DOS 2.0 введен
\
в качестве разделителя каталогов в начале 1980-х годов. Причина/
MS-DOS 1.0 (который вообще не поддерживал каталоги) уже использовался/
ввести параметры командной строки. Потребовалось это использование/
от CP / M который взял это у VMS , Вы можете прочитать более подробное объяснение того, почему был сделан этот выбор. в блоге Ларри Остермана (MS-DOS даже кратко имел возможность изменить опцию символа на-
и разделитель каталогов для/
, но это не прилипало)./
это признается большинством API уровня программиста (во всех версиях DOS и Windows). Таким образом, вы можете часто, но не всегда сойти с рук с помощью/
в качестве разделителя каталогов под Windows. Заметным исключением является то, что ты не можешь использовать/
в качестве разделителя после\\?
префикс который (даже в Windows 7) является единственным способом указать путь, используя Юникод или содержащий более 260 символов.Поддержка некоторых элементов пользовательского интерфейса
/
в качестве разделителя каталогов под Windows, но не все. Некоторые программы просто передают имена файлов в базовый API, поэтому они поддерживают/
а также\
индифферентно. В интерпретаторе команд (вcommand.com
или жеcmd
), ты можешь использовать/
во многих случаях, но не всегда; это частично зависит от версии Windows (например,cd /windows
работает в XP и 7, но не в Windows 9x). Поле ввода пути Explorer принимает/
(по крайней мере, начиная с XP; возможно, потому что он также принимает URL-адреса). С другой стороны, стандартный диалог открытия файла отклоняет косые черты ,источник
/
распознается как разделитель каталогов командной строкой MS-DOS или Windows./
принимается в командной строке? Например, что делаетdir /p
делать? а такжеdir c:/p
? а такжеc:/windows/notepad.exe
? а такжеstart /windows/notepad.exe
? и т. д. (у меня нет машины Windows для тестирования.)/
вероятно, использовался в качестве разделителя каталогов в UNIX, потому что это был простой (не смещенный) ключ для удара по телетайпу. Не смещенные специальные символы были: - ; , . /
,/
(а также-
для коммутаторов), как Xenix, и вдохновлен Xenix, но IBM выпустила до того, как Microsoft отправила OEM-производителям, и IBM использовала` (and
/ `для переключателей) и изменил приглашениеA:
вA>
поэтому они изменили значение по умолчанию и отправили глючные/
/-
) документация плюс примечание, что она была изменена и почему.лежащий в основе Windows API может принимать обратную косую черту или косую черту для разделения каталогов и файловых компонентов пути, но соглашение Microsoft состоит в том, чтобы использовать обратную косую черту, а API, которые возвращают пути, помещают обратную косую черту.
MS-DOS 2.0 скопировал иерархическую файловую систему из Unix и, таким образом, использовал косую черту, но (возможно, по настоянию IBM ) добавили обратную косую черту, чтобы можно было вводить пути в командной оболочке, сохраняя совместимость MS-DOS 1.0 а также CP / M где косая черта была индикатором опции командной строки.
сравнить
который показывает текущий каталог в широком формате против
который управляет
w
файл в директореdir
,Рекомендации:
источник