Обмен технологиями

Основы Linux: 3. Относительные и абсолютные пути

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

3. Относительные и абсолютные пути.

  • Строго говоря, имя файла состоит из каталога + имени файла.

система Windows

  • абсолютный путь

    • Абсолютные пути начинаются с буквы диска, например:C:UsersUsernameDocumentsfile.txt
    • В Windows разделителем путей является обратная косая черта.
    • Абсолютный путь точно определяет местоположение файла или каталога, независимо от того, где находится текущий рабочий каталог.
  • относительный путь

    • Относительный путь — это путь относительно текущего рабочего каталога, за исключением части буквы диска.
    • В Windows. Представляет текущий каталог,.. Представляет родительский каталог.
    • Пример: Если текущий рабочий каталог C:UsersUsername,но Documentsfile.txt ЭквивалентноC:UsersUsernameDocumentsfile.txt
    • Пример: Если текущий рабочий каталог C:UsersUsername,но .Documentsfile.txt ЭквивалентноC:UsersUsernameDocumentsfile.txt

система Linux

  • абсолютный путь

    • Абсолютные пути вычисляются от корня (/) и никогда не являются неоднозначными, например:/usr/include/stdio.h
    • В Linux разделителем пути является косая черта. /
    • Абсолютные пути всегда начинаются с корневого каталога, и путь однозначно определяет расположение файла или каталога.
  • относительный путь

    • Относительный путь — это путь относительно текущего рабочего каталога, исключая часть корневого каталога.
    • В Linux,. Представляет текущий каталог,.. Представляет родительский каталог.
    • Пример: Если текущий рабочий каталог /usr,но include/stdio.h Эквивалентно/usr/include/stdio.h

Сравните два

  • разделитель пути

    • Windows использует обратную косую черту , Linux использует косую черту /
  • разрешение пути

    • Windows не учитывает регистр при обработке путей, но разделители путей разные.
    • Пути в Linux строго чувствительны к регистру и регистру.
  • привычка использования

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

Разделитель путей в относительных путях — ./.

  • «./user/test.sh» эквивалентен «user/test.sh».

  • Добавление или отсутствие добавления . в пути обычно не имеет никакого эффекта, особенно в большинстве современных операционных систем и сред командной строки. Это потому что:

  • Текущий каталог по умолчанию: если вы укажете относительный путь, система по умолчанию будет искать файлы или каталоги в текущем рабочем каталоге. Таким образом, Documentsfile.txt и .Documentsfile.txt в большинстве случаев указывают на одно и то же местоположение файла.

  • Показать текущий каталог: иногда для четкого обозначения текущего каталога или в сложных командах, чтобы избежать путаницы, . Это улучшит читаемость кода и ясность команд.

  • Кросс-платформенная адаптируемость: при кросс-платформенной разработке или сценариях явное использование может гарантировать правильную интерпретацию разделителей путей в разных операционных системах. Например, в Windows используйте / в Unix или Linux.

  • В целом, использовать или нет . зависит от личных предпочтений или предпочтений команды, а также от соглашений о кодировании. В большинстве случаев система автоматически обрабатывает относительные пути.Так что . не требуется, но может помочь уточнить начальную точку пути.