psql:命令找不到Mac

时间:2016-03-22 13:07:13

标签: macos bash postgresql psql

我通过http://www.postgresql.org/download/macosx/

上的图形安装安装了PostgreSQL

我在我的应用程序中看到它,并且在我的应用程序中也有psql终端。我需要psql在常规终端中为另一个bash脚本工作我正在为一个应用程序运行。

出于某种原因,当我跑

psql

在Mac终端中,我的输出是

-bash: psql: command not found

我在终端中运行了以下内容:

locate psql | grep /bin

,输出

/Library/PostgreSQL/9.5/bin/psql

然后我编辑了〜/ .bash_profile并将其添加到路径中:

export PATH = /Library/PostgreSQL/9.5/bin/psql:$PATH

〜/ .bash_profile中唯一的另一件事是SDK man,它位于脚本的底部,因为它应该是。我已经尝试将浴缸设置为/Library/PostgreSQL/9.5/bin/。我也重启了我的终端。

如何让psql工作?

修改 添加到.bashrc后,当我打开终端

时返回此输出
-bash: export: `/Library/PostgreSQL/9.5/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin': not a valid identifier

11 个答案:

答案 0 :(得分:64)

你的PATH略有错误。您需要PATH到"包含目录" ,而不是实际的可执行文件本身。

你的PATH应该这样设置:

export PATH=/Library/PostgreSQL/9.5/bin:$PATH

没有额外的sql部分。此外,您必须删除等号周围的空格。

关键字:Postgresql,PATH,macOS,OSX,psql

答案 1 :(得分:15)

来自Postgres documentation page:

  

sudo mkdir -p /etc/paths.d& amp ;& amp; echo /Applications/Postgres.app/Contents/Versions/latest/bin | sudo tee /etc/paths.d/postgresapp

重启您的终端,您将在路径中使用它。

答案 2 :(得分:4)

这对我来说很有效:

  1. 下载应用程序:https://postgresapp.com/downloads.html

  2. 运行命令来配置$ PATH-注意,尽管它对我不起作用。 https://postgresapp.com/documentation/cli-tools.html

  3. 手动将其添加到.bash_profile文档中:

    cd  # to get to your home folder
    open .bash_profile  # to open your bash_profile
    

    在您的bash个人资料中添加:

    # Postgres
    export PATH=/Applications/Postgres.app/Contents/Versions/latest/bin
    

    保存文件。重新启动终端。输入“ psql”。完成。

答案 3 :(得分:3)

打开首页文件夹中的文件.bash_profile。这是一个隐藏文件。

将以下路径添加到.bash_profile文件中的结束导出路径行 :/Applications/Postgres.app/Contents/Versions/latest/bin

符号:分隔路径。

实施例

如果文件包含: export PATH=/usr/bin:/bin:/usr/sbin:/sbin

它将成为: export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/Applications/Postgres.app/Contents/Versions/latest/bin

如何显示隐藏文件

在终端中,粘贴以下内容:defaults write com.apple.finder AppleShowAllFiles YES

答案 4 :(得分:3)

如果有人通过Mojave使用自制软件:

export PATH=/usr/local/opt/postgresql@9.5/bin:$PATH

根据需要更改版本!

答案 5 :(得分:2)

如果已下载并安装Postgres,则运行此程序可以解决此问题:

sudo mkdir -p /etc/paths.d &&
echo /Applications/Postgres.app/Contents/Versions/latest/bin | sudo tee 
/etc/paths.d/postgresapp

重新启动终端,您将可以使用psql命令。

参考:https://postgresapp.com/documentation/cli-tools.html

答案 6 :(得分:1)

Mojave,Postgres是通过

安装的
brew install https://raw.githubusercontent.com/lembacon/homebrew-core/bede8a46dea462769466f606f86f82511949066f/Formula/postgresql@9.6.rb

如何在路径中获取psql:

brew link postgresql@9.6 --force

答案 7 :(得分:1)

如果Postgresql是从官方网站下载的。安装后,运行这些命令可以帮助我解决 psql 问题。

使用cd ~转到您的主目录

在主目录中,运行ls -a。使用 vim

编辑 .bash_profile 文件

vi .bash_profile打开vim编辑器。

在编辑器上按i插入。

添加export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/<Version Number>/bin

Version Number是指本地计算机上安装的postgresql的版本号。就我而言,安装了 12版,所以我输入了

export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/12/bin

esc键,然后按:wq退出编辑器。

在终端中输入source .bash_profile,以读取并执行刚刚作为当前Shell脚本中的参数传递的文件的内容。

运行psql

terminal result

总结:

  • cd ~
  • vi .bash_profile
  • export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/12/bin 记下版本号
  • exit vim
  • source .bash_profile
  • psql有效?

答案 8 :(得分:0)

2017年10月回答

运行

export PATH=/Library/PostgreSQL/9.5/bin:$PATH

然后重新启动终端。

答案 9 :(得分:0)

作为一名PostgreSQL新手,我发现postgresql站点上的os x设置说明不可穿透。我遇到各种错误。幸运的是,卸载程序运行良好。

cd /Library/PostgreSQL/11; open uninstall-postgresql.app/

然后,我首先进行了brew安装,随后是本文How to setup PostgreSQL on MacOS

现在工作正常。

答案 10 :(得分:0)

我知道其他一些人已经提到需要更新路径,但是对我来说它不起作用直到我在引号中添加路径本身。我不是 100% 确定为什么会发生这种情况,但这是对我有用的命令(在 MacOS 终端上)

export PATH="/usr/local/opt/postgresql@9.5/bin:$PATH"