cd $ {DIR_PATH} возвращает «Нет такого файла или каталога»

OS = MacOS 10.8.5 / Darwin Kernel Version 12.5.0 .

В моем .bash_profile меня есть:

 export DIR_PATH=~/concrete/path 

На терминале

 >echo ${DIR_PATH} ~/concrete/path 

Также явный cd работает:

 >cd ~/concrete/path >pwd /Users/myuserid/concrete/path 

Но когда я сделаю

 >cd ${DIR_PATH} -bash: cd: ~/concrete/path: No such file or directory 

В чем проблема?

  • Конфигурация Tmux не сохраняет PWD в новом окне или разделенном окне
  • Как я могу создать «базу» для других псевдонимов для ссылки на каталоги базы данных cd base / x?
  • Позволяет просматривать и заполнять файлы из другого каталога
  • Не удается выполнить команду при запуске экрана GNU
  • Не удается получить доступ к каталогу / etc / ppp / peers?
  • Изменение конфигурации пользовательского cwd как root
  • Какой самый безопасный (или самый элегантный или самый короткий) способ изменить в каталог, откуда вызывается скрипт?
  • ключевое слово сервиса «сервис» не требуется
  • 2 Solutions collect form web for “cd $ {DIR_PATH} возвращает «Нет такого файла или каталога»”

    Вместо того, чтобы давать ~, поскольку ваш дом в .bash_profile дает абсолютный путь:

     export DIR_PATH=/Users/myuserid/concrete/path 

    Проблема в том, что ваш bash не мог заменить ~ ваш домашний каталог в вашем профиле bash.

    В качестве альтернативы использованию тильды ~ или с использованием жесткого пути /Users/myuserid/... Я бы предложил вместо этого использовать переменную среды $HOME . Такие переменные обычно устанавливаются путем login (см. man login ) в большинстве Unix, и я подозреваю, что OSX также сделает это.

    выдержка

    Это должно позволить администратору системы войти в систему даже в случае сетевых проблем. Значение для $HOME , $USER , $SHELL , $PATH , $LOGNAME и $MAIL устанавливается в соответствии с соответствующими полями в записи пароля. $PATH умолчанию для /usr/local/bin:/bin:/usr/bin для обычных пользователей и /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin для root, если не настроен другой.

    Как всегда, вы можете использовать команду env чтобы увидеть, какие переменные у вас есть в вашем распоряжении.

    Рекомендации

    • Настройка среды OS X Unix
    Interesting Posts

    Systemd: как запустить / остановить скрипт Python, который должен работать в фоновом режиме, внутри Virtualenv

    Как заставить Wicd использовать другие драйверы в Debian 7.2 Xfce?

    Как я могу запустить речь в текст и сохранить результат в переменной?

    Проблема с fsck при загрузке Debian stretch

    Убейте Wi-Fi соединение

    Открыть URL-адрес и заполнить форму автоматически

    Debian Squeeze: подключение к A2DP (bluetooth) через командную строку

    Обновлен мой архивный linux-сервер, и теперь я получаю tmux: требуется локаль UTF-8 (LC_CTYPE), но имеет ANSI_X3.4-1968

    Не удалось загрузить в Mint с сообщением «s», чтобы пропустить монтаж

    Что делают линии, такие как «-y» или «-r», помещенные в CLI?

    Извлечение имени файла из строки пути

    Разделение разделов LVM2

    REISUB (клавиша Alt + SysRq +) не работает на Slackware13.37_64, KDE

    Как добавить компонент в существующий LibreOffice?

    Как сканировать каталог с пробелом в его имени с помощью maldet

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