Странность с символами и относительными путями

Может ли кто-нибудь объяснить это мне? У меня возникли проблемы с пониманием того, как это настроено и почему оно ведет себя так, как оно.

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

 $ ls -l /bin/zsh lrwxrwxrwx 1 root root 14 Dec 1 2011 /bin/zsh -> ../sfw/bin/zsh* 

Когда я увидел это, я подумал: «Хорошо, символическая ссылка использует относительный путь. Нет ничего сложного».

Но если я затем попытаюсь напрямую cd к тому, что должно быть там, где находится относительный путь, я получаю следующее:

 $ cd /bin/sfw/bin cd: no such file or directory: /bin/sfw/bin 

Однако, если я специально напечатаю это

 $ cd ../sfw/bin 

когда /bin – рабочий каталог, то он работает. И затем я также получаю следующее:

 $ pwd /usr/sfw/bin 

Что здесь происходит?

One Solution collect form web for “Странность с символами и относительными путями”

/bin , вероятно, символическая ссылка на /usr/bin в вашей системе. Если это так, то:

 /bin/../sfw/bin/zsh 

фактически будет таким же, как

 /usr/bin/../sfw/bin/zsh 

который сводится к

 /usr/sfw/bin/zsh 

где находится zsh . Обратите внимание, что вы пытались,

 /bin/sfw/bin 

не соответствует ни одному пути, который вы действительно могли видеть в системе. Правильный способ разрешить относительный путь ( ../sfw/bin/zsh ) с учетом абсолютного пути пути, который формирует базу для этого относительного пути ( /bin ), состоит в том, чтобы объединить их вместе как /bin/ + ../sfw/bin/zsh/bin/../sfw/bin/zsh .

  • cd и ls ведут себя по-разному, когда внутри softlink к директории
  • Как копировать символические ссылки при сохранении правильности ссылки?
  • Невозможно использовать команду «firefox» для запуска последней версии Firefox
  • Создайте новую ссылку для доступа ко всем файлам и папкам
  • Почему я получаю ошибку при загрузке разделяемых библиотек: libssl.so.6 не может открыть файл общих объектов даже после запуска ldconfig?
  • Файловая система Docker - совместимость с символическими ссылками
  • Перечислите прямые символические ссылки (ссылки, которые не указывают на другую символическую ссылку)
  • cd в каталог символически связанного файла
  • Есть ли способ создать ссылку, которая действует как ярлык?
  • Почему заполнение bash символической ссылки отличается от каталога?
  • Symlink всех каталогов внутри одного каталога в другой каталог
  • Interesting Posts

    Как редактировать / etc / hosts без sudo?

    MC 4.8.13 использует Ctrl-Backspace для списка каталогов

    Проблема с $ PATH и исполняемым файлом

    Почему этот файл конфигурации ALSA предотвращает использование aplay и iscord в списке устройств PCM?

    Извлеките незавершенный архив RAR под Linux (рабочий стол)

    Может ли батарея ноутбука взорваться при использовании Linux?

    Группируйте содержимое файла двумя полями и суммируйте третье поле

    Предупреждения / ошибки при запуске clamav / clamscan, сканирование 3 ТБ жесткого диска

    PulseAudio не может изменить приемник для одной конкретной программы

    bash one-liner: установить переменную на вывод команды или значение по умолчанию, если вывод пуст

    Firefox на i3 – все иероглифы

    Логротат добавляет и не заменяет дату на имя файла

    файл зоны сервера подчиненного подчиненного сервера не передан

    Поиск файлов по всей стране, созданных в диапазоне дат

    rsyslog – действие и действие

    Linux и Unix - лучшая ОС в мире.