GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya bisa memeriksa apakah PostgreSQL diinstal atau tidak melalui skrip Linux?

Jika berbasis debian.

aptitude show postgresql | grep State

Tapi saya kira Anda bisa mencoba meluncurkannya dengan beberapa flag seperti --version , yang cukup mencetak beberapa info dan keluar.

Diperbarui menggunakan "status postgres layanan". Coba:

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

Kami cukup menulis:

psql --version

keluaran menunjukkan seperti:

psql (PostgreSQL) 11.5 (Ubuntu 11.5-1.pgdg18.04+1)

Tidak ada cara langsung untuk melakukan ini. Yang dapat Anda lakukan hanyalah memeriksa dengan pengelola paket (rpm, dpkg) atau menyelidiki beberapa kemungkinan lokasi untuk file yang Anda inginkan. Atau Anda dapat mencoba menghubungkan ke port yang mungkin (5432) dan melihat apakah Anda mendapatkan respons protokol PostgreSQL. Tapi semua ini tidak akan menjadi sangat kuat. Anda mungkin ingin meninjau persyaratan Anda.


Bagaimana dengan mencoba which perintah?

Jika Anda menjalankan which psql dan Postgres tidak diinstal, tampaknya tidak ada keluaran. Anda baru saja menyiapkan prompt terminal untuk menerima perintah lain:

> which psql
>

Namun jika Postgres terinstal, Anda akan mendapatkan respons dengan jalur ke lokasi penginstalan Postgres:

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

Melihat man which tampaknya juga ada opsi yang dapat membantu Anda:

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

Jadi sepertinya selama bahasa skrip apa pun yang Anda gunakan dapat menjalankan perintah terminal, Anda dapat mengirim which -s psql dan gunakan nilai pengembalian untuk menentukan apakah Postgres diinstal. Dari sana Anda dapat mencetak hasil tersebut sesuka Anda.

Saya telah menginstal postgres di mesin saya, jadi saya menjalankan yang berikut

> which -s psql
> echo $?
0

yang memberi tahu saya bahwa perintah mengembalikan 0, menunjukkan bahwa Postgres yang dapat dieksekusi ditemukan di komputer saya.

Berikut informasi tentang penggunaan echo $?


Linux
  1. Cara Memeriksa Versi Postgres Yang Sedang Berjalan/Diinstal

  2. Linux – Bagaimana Menemukan Versi Java Di Folder yang Diinstal Java?

  3. Cara Memeriksa vendor paket RPM yang diinstal di Linux

  1. Bagaimana saya bisa menjalankan skrip Perl sebagai daemon sistem di linux?

  2. Bagaimana saya bisa tahu di Linux proses mana yang mengirim sinyal ke proses saya

  3. Bagaimana cara mengecek akses internet menggunakan skrip bash di linux?

  1. Bagaimana saya bisa menanggapi permintaan dalam skrip Linux Bash secara otomatis?

  2. Bagaimana cara memeriksa zona waktu mana di Linux?

  3. Bagaimana saya bisa memeriksa port mana yang sibuk dan port mana yang kosong di mesin Linux saya?