我认为这是相当基本的,但似乎有一些我不理解的基本内容。任何解释都非常感谢。
当我在命令行上执行此操作时:
$ export MYPATH=$HOME/somepath/something
$ echo $MYPATH
我得到/home/myname/somepath/something了预期。
但是当我在脚本中有这个时,它看起来像这样:
MYPATH=$HOME/somepath/something
source $MYPATH -whatever
我收到一条错误消息
/bin/sh: $HOME/somepath/something: No such file or directory
但是当我硬编码脚本中的完整路径时,MYPATH=/home/myname/somepath/something它可以正常工作。
显然它并没有扩大$HOME变量,但我一直在谷歌搜索,我似乎无法弄清楚为什么,或者如何以正确的方式做到这一点。我不希望对路径进行硬编码,因为不同的用户会使用这个脚本,这就是拥有$HOME变量的全部意义,对吧?
提前感谢您的帮助!