use*_*545 5 .profile postgresql-9.1 psql
我使用的是 Mac OS X 10.5.8。我使用 macports 安装了 Postgresql 9.1,它已将其安装/opt/local/lib/postgresql91并创建了一个bin包含psql其他 unix 可执行文件的文件夹。
据我所知,这是 postgresql 程序的核心(我这么说是因为其他 postgresql 文件安装在我系统的其他部分,我不确定它们的用途)。
我已经编辑了 my.profile以包含postgresql91/bin并运行 source的路径~/.profile。
echo $PATH
Run Code Online (Sandbox Code Playgroud)
确认路径在那里。但是当我psql在命令行中输入时,我得到"command not found".
我不明白我还应该做什么。
Apple 在此过程中对默认 shell 进行了一些更改。这个问题提出的核心错误是command not found。我会建议如何解决该问题。
首先,让我们找到 Postgresql 的安装位置:
find / -type f -name psql -print | sort
Run Code Online (Sandbox Code Playgroud)
psql这将找到您系统上调用的所有文件。这应该只报告一个条目。请注意,可能会出现很多错误(例如查找:/private/var/agentx:权限被拒绝)。您可以安全地忽略这些。
对于您的系统,二进制文件位于此处:/opt/local/lib/postgresql91/bin/psql 我使用自制软件,所以我的位于此处:/opt/homebrew/bin/psql
把 psql 去掉。那就是目录。我们将在下面使用它。
打开 Terminal.app(通常位于应用程序的 Utilities 目录中)。
运行这个命令:
open -e .profile ; open -e .cshrc ; open -e .zshrc; open -e .login; open -e .bash_profile
Run Code Online (Sandbox Code Playgroud)
忽略任何错误,例如:
The file /Users/risner/.zshrc does not exist.
The file /Users/risner/.login does not exist.
Run Code Online (Sandbox Code Playgroud)
在打开的文件中,您可能会看到诸如“set path =”(对于 .cshrc 或 .login)和“PATH =”之类的行。
通过添加目录路径,将上面的目录路径添加到所有路径行/opt/local/lib/postgresql91/bin/。例如,对于 .cshrc 或 .login,它们之间用空格分隔,您可以更改:
set path = ($HOME/bin /bin /sbin /usr/bin /usr/sbin /usr/X11R6/bin)
Run Code Online (Sandbox Code Playgroud)
对此:
设置路径=($HOME/bin /bin /sbin /usr/bin /usr/sbin /usr/X11R6/bin /opt/local/lib/postgresql91/bin)
对于其他以:分隔的情况,请更改:
export PATH="~/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)
到
export PATH="~/bin:/opt/local/lib/postgresql91/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6519 次 |
| 最近记录: |