0

我认为这是相当基本的,但似乎有一些我不理解的基本内容。任何解释都非常感谢。

当我在命令行上执行此操作时:

$ 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变量的全部意义,对吧?

提前感谢您的帮助!

4

0 回答 0