Em vez de dar o ~ como sua casa em .bash_profile, dê o caminho absoluto:
export DIR_PATH=/Users/myuserid/concrete/path
O problema é que seu bash não pôde substituir ~ em seu diretório home no seu perfil bash.
OS = MacOS 10.8.5 / Darwin Kernel Version 12.5.0 .
No meu .bash_profile eu tenho:
export DIR_PATH=~/concrete/path
No terminal
>echo ${DIR_PATH}
~/concrete/path
Também explícito cd funciona:
>cd ~/concrete/path
>pwd
/Users/myuserid/concrete/path
Mas quando eu faço
>cd ${DIR_PATH}
-bash: cd: ~/concrete/path: No such file or directory
Qual é o problema?
Como alternativa ao uso de um til ~ ou usando o caminho físico /Users/myuserid/... , sugiro usar a variável de ambiente $HOME . Variáveis como essa geralmente são configuradas por login (veja man login ) na maioria dos Unixes, e eu suspeito que o OSX também faria isso.
trecho
This should allow the system adminitrator to login even in case of network problems. The value for
$HOME,$USER,$SHELL,$PATH,$LOGNAME, and$PATHdefaults to/usr/local/bin:/bin:/usr/binfor normal users, and to/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/binfor root if not other configured.As always you can use the command
envto see what variables you have at your disposal too.