当前位置:  开发笔记 > 数据库 > 正文

如何通过Linux脚本检查是否安装了PostgreSQL?

如何解决《如何通过Linux脚本检查是否安装了PostgreSQL?》经验,为你挑选了3个好方法。

如果在Linux上安装了PostgreSQL,我想检查脚本并打印结果.有关如何进行检查的任何建议?



1> campo..:

尝试which命令怎么样?

如果您要运行which psql并且未安装Postgres,则似乎没有输出.您只需准备好终端提示符即可接受另一个命令:

> which psql
>

但是如果安装了Postgres,你会得到一个回复​​,其中包含Postgres安装位置的路径:

> which psql
/opt/boxen/homebrew/bin/psql

看着man which那里似乎还有一个可以帮助你的选择:

-s      No output, just return 0 if any of the executables are found, or
        1 if none are found.

因此,只要您使用的任何脚本语言都可以执行终端命令,您可以发送which -s psql并使用返回值来确定是否已安装Postgres.从那里你可以打印出你喜欢的结果.

我的机器上安装了postgres,所以运行以下命令

> which -s psql
> echo $?
0

它告诉我该命令返回0,表明我的机器上找到了Postgres可执行文件.

这是有关使用的信息 echo $?


对我来说,唯一的选择是`-a`(打印每个参数的所有匹配路径名),如果我使用`-s`,则会导致非法选项.

2> Draco Ater..:

如果它是基于debian的.

aptitude show postgresql | grep State

但我想你可以尝试用一些标志来启动它--version,只需打印一些信息并退出.

使用"service postgres status" 更新.尝试:

service postgres status
if [ "$?" -gt "0" ]; then
  echo "Not installed".
else
  echo "Intalled"
fi



3> Peter Eisent..:

没有直接的方法来做到这一点.您所能做的就是检查软件包管理器(rpm,dpkg)或探测所需文件的某些可能位置.或者您可以尝试连接到可能的端口(5432)并查看是否获得PostgreSQL协议响应.但这一切都不会非常强大.您可能想要查看您的要求.


绝对正确。我已经从“茶壶”用户名下的源安装了PostgreSQL服务器,并将二进制/服务名更改为“ TeaPotSQL”。没有其他用户有权读取安装目录的目录。默认端口也已更改。去找到它:-)
推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有