Mac OSX 10.7 安装脚本错误:找不到"~/Library/"



我使用bash脚本在Mac OS X"Lion"上安装应用程序。首先,我将应用程序包复制到适当的位置,然后尝试将postgres安装到应用程序包中。postgres数据库的数据路径需要位于"~/Library/ApplicationSupport/myappfolder/data/"中。

现在的问题(似乎)是,由于操作系统说找不到路径,脚本出错了。将我得到的路径名备份到"~/Library/",但仍然失败。该脚本以管理员权限运行。

换句话说,从终端来看,这是有效的:

   me: cd ~/Library

但这不是:

   me: mydir="~/Library/"
   me: cd $mydir

我知道10.7中的情况发生了变化,但我还没有在开发中心找到答案。

我不认为这是特定于Lion的。使用引号时,会导致~字符按字面处理,而不是作为$HOME的别名。因此,它正在寻找一个名称中带有波浪号的实际目录,但该目录并不存在。

请尝试使用mydir="$HOME/Library",看看这是否解决了问题。

这实际上在10.5中也不起作用,所以我不认为这是Lion特有的问题。不过,像这样的东西总会奏效:

eval "cd $mydir"

相关内容