Homebrew: как проверить, включена ли домашняя служба или нет

#bash #shell #elasticsearch #curl #homebrew

#bash #оболочка #elasticsearch #curl #homebrew

Вопрос:

Я использую elasticsearch instance в качестве базы данных nosql. Это было установлено с brew помощью Mac os.

Вот как я начинаю elasticsearch .

 brew services start elasticsearch
 

Мне было интересно, есть ли команда brew (или другая), где я могу узнать, elasticsearch включен экземпляр или нет.

В конечном итоге я хочу запустить скрипт bash, который выполняет следующее:

 If elasticsearch is off:
    Turn on elastiscearch
    Proceed
Else:
    Proceed
 

Ответ №1:

brew services list выдает статус служб. итак, что-то вроде brew services list | grep elastiscearch | awk '{ print $2}' должно возвращать статус службы эластичного поиска, независимо от того, запущена она или остановлена

Ответ №2:

Просто запустите:

 brew services
 

Пример вывода

 Name      Status  User Plist
grafana   started mark /Users/mark/Library/LaunchAgents/homebrew.mxcl.grafana.plist
influxdb  started mark /Users/mark/Library/LaunchAgents/homebrew.mxcl.influxdb.plist
mosquitto stopped      
redis     started mark /Users/mark/Library/LaunchAgents/homebrew.mxcl.redis.plist
unbound   stopped 
 

Вы также можете выполнить следующую команду, чтобы получить идентификатор процесса (pid) служб homebrew:

 launchctl list | grep homebrew

460 0   homebrew.mxcl.influxdb
484 0   homebrew.mxcl.grafana
469 0   homebrew.mxcl.redis