Interested Article - Путь к файлу

Путь ( англ. path ) — набор символов, показывающий расположение файла или каталога в файловой системе .

В операционных системах UNIX разделительным знаком при записи пути является « / ». В Windows — « \ ». Эти знаки служат для разделения названия каталогов, составляющих путь к файлу.

Например, в следующей записи адресации /home/user_viki/foo/bar.txt часть bar.txt — это имя файла , а /home/user_viki/foo — путь к нему.

Путь может быть абсолютным или относительным. Полный или абсолютный путь — это путь, который указывает на одно и то же место в файловой системе, вне зависимости от текущего рабочего каталога или других обстоятельств. Полный путь всегда начинается с корневого каталога. Относительный путь представляет собой путь по отношению к текущему рабочему каталогу пользователя или активных приложений .

Для эффективного поиска файлов UNIX -подобные операционные системы, как правило, имеют системную переменную $PATH в командной оболочке (например, sh ), которая задает перенаправления к важнейшим исполняемым файлам. Узнать значение этой переменной можно с помощью команды echo $PATH или аналогичной.

Представления пути по операционной системе и оболочке

Операционная система Оболочка Корневой каталог Разделитель каталогов Текущий каталог Родительский каталог Домашний каталог Примеры
POSIX Systems/ UNIX-подобная ОС Командная оболочка UNIX / / . .. ~ /home/user/docs/Letter.txt
DOS COMMAND.COM [буква диска:] \ или
\\ [имя сервера] \
\ . .. C:\USER\DOCS\LETTER.TXT
A:PICTURE.JPG
\\SERVER01\USER\DOCS\LETTER.TXT
OS/2 cmd.exe [буква диска:] \ / или \ . .. C:\user\docs\Letter.txt

A:Picture.jpg

Microsoft Windows cmd.exe [буква диска:] / или
[буква диска:] \ или
\\ [имя сервера] \
примечание: для команды CD, / treated as relative path (same as [буква диска:] .\)
/ или \ (примечание: для команды CD, / treated as relative path (same as .\)) . .. C:\user\docs\Letter.txt

..\Picture.jpg
\\Server01\user\docs\Letter.txt

Microsoft Windows Windows PowerShell [имя диска:] / или [имя диска:] \ или
\\ [имя сервера] \ или

[PSSnapIn name] \ [PSProvider name:][:PSDrive root]

/ или \ . .. ~ C:\user\docs\Letter.txt

\\Server01\user\docs\Letter.txt
UserDocs:/Letter.txt
Variable:PSVersionTable
Registry::HKEY_LOCAL_MACHINE\SOFTWARE\
Microsoft.PowerShell.Security\Certificate::CurrentUser\

TOPS-20 [имя устройства:] . PS:<USER.DOCS>LETTER.TXT,4
RSX-11 [имя устройства:] DR0:[30,12]LETTER.TXT;4
OpenVMS [имя устройства:] или

[NODE["accountname password"]] :: [имя устройства] :

. [] [-] SYS$LOGIN: SYS$SYSDEVICE:[USER.DOCS]PHOTO.JPG

GEIN::[.DRAFTS]LETTER.TXT;4

Classic Mac OS [volume or drive name] : : : :: Macintosh HD:Documents:Letter
ProDOS AppleSoft BASIC / [volume or drive name] / / /SCHOOL.DISK/APPLEWORKS/MY.REPORT

FLIGHT.SIMULATOR,D2

AmigaOS Amiga CLI / AmigaShell [drive, volume, device or assign name]: / "" (empty string) / Workbench:Utilities/MultiView

DF0:S/Startup-Sequence
S:Startup-Sequence
TCP:en.wikipedia.com/80

RISC OS Task window [fs type[#option]:][:drive number or disc name.] $

примечание: &, % and @ can also be used to reference the root of the current user, the library and the current (working) directory respectively.

. @ ^ & ADFS::MyDrive.$.Documents.Letter

Net#MainServer::DataDrive.$.Main.sy10823
LanMan::WindowsC.$.Pictures.Japan/gif
NFS:&.!Choices
ADFS:%.IfThere

Когда файловые системы монтируются с поддержкой расширений файлов, символы '.' заменяются на '/', как в примере с Japan/gif выше.

Symbian OS File manager \ \ \user\docs\Letter.txt
Shell // (root of domain)

/ (root of current node)

/ . \ ~ //node/home/user/docs/Letter.txt
./inthisdir
\\greatgrandparent
~rcinfo
MenuetOS CMD / /
интерпретатор командной строки VOS % [имя_системы] # [имя_модуля] > > < %sysname#module1>SubDir>AnotherDir
TACL Tandem Advanced Command Language Нет корня . Нет родительского каталога \NODE.$DISK.SUBVOL.FILE

\NODE.$DEVICE

\NODE.$DEVICE.#SUBDEV.QUALIFIER

CP/M [буква диска:] Нет подкаталогов Нет подкаталогов Нет родителей Нет подкаталогов A:LETTER.TXT
:[имя тома]: или .[имя устройства]: или [префикс]:

прим.: префикс может быть числом (0-31), * (загрузочный том) или @ (домашний каталог AppleShare)

: или / @ :Apps:Platinum.Paint:Platinum.Paint
*:System:Finder
.APPLEDISK3.5B/file

UNC в Windows

Общее соглашение об именах ( англ. Uniform Naming Convention ) или универсальное соглашение об именовании ( universal naming convention ), UNC — соглашение об именовании файлов и других ресурсов, дающее машинонезависимое определение местоположения ресурса .

Имя, соответствующее соглашению об универсальном назначении имен, полное имя ресурса в сети, включающее имя сервера и имя совместно используемого ресурса (принтера, каталога или файла); для каталогов или файлов могут также включать относительный путь.

Синтаксис UNC -пути к принтеру следующий: \\Сервер\СетевойПринтер , где Сервер — сетевое имя компьютера, СетевойПринтер — это сетевое имя общего принтера на этом компьютере.

Синтаксис UNC -пути к каталогу или файлу следующий: \\Сервер\СетевойКаталог[\ОтносительныйПуть] , где Сервер — сетевое имя компьютера, СетевойКаталог — это сетевое имя общего каталога на этом компьютере, а ОтносительныйПуть — путь к каталогу или файлу из общего каталога.

СетевойКаталог не обязательно называется так же, как ассоциированный с ним каталог на сервере, имя даётся в ходе открытия общего доступа к каталогу в файловой системе компьютера [ источник не указан 4539 дней ] .

Некоторые API -вызовы в Microsoft Windows поддерживают использование так называемых Long UNC или UNCW : \\?\UNC\Сервер\СетевойКаталог[\ОтносительныйПуть] или \\?\Диск:[\Каталог][\Файл] , где Диск — , Каталог — имя каталога на диске, Файл — имя файла в каталоге или на диске [ источник не указан 4539 дней ] .

В версиях Windows , предшествовавших Windows XP , только API -вызовы, использующие Long UNC , могли использовать пути длиной более 260 символов [ источник не указан 4539 дней ] .

Всего в Microsoft Windows используются следующие типы путей:

  • ( англ. local file system ) — имена в локальной файловой системе, например: C:\Folder\File .
  • UNC — сетевые имена, например: \\Server\SharedFolder\Folder\File .
  • Long UNC или UNCW — длинные имена, например: \\?\UNC\Server\SharedFolder\Folder\File или \\?\C:\Folder\File .

Литература

Mitch Tulloch, Ingrid Tulloch. Microsoft Encyclopedia of Networking, Second Edition . — ISBN 0-7356-1378-8 .

Примечания

  1. . Дата обращения: 17 сентября 2011. 20 декабря 2013 года.
Источник —

Same as Путь к файлу