1. 程式人生 > >shell通過程序來判斷多個redis服務是否都啟動

shell通過程序來判斷多個redis服務是否都啟動

動指令碼後,不知redis服務是否全部啟動成功,查詢了shell中許多判斷自啟動是否執行成功的方法,經測試都失敗。最終發現多種方法只能判斷shell語句指令碼是否執行成功,並不能來判斷redis服務。我開始思考,先去執行自啟指令碼,然後去判斷程序是否存在這個程序,這樣不就可以知道是否自啟成功。通過下面的程式碼:name="redis-server"#通過服務名來判斷伺服器是否有這個程序if test $( pgrep -f $name | wc -l ) -eq 0 then echo "bucunzai" else echo "cunzai" fi 成功的判斷了redis服務是否執行成功,但是我的伺服器有多個redis物件,多個redis服務,服務名稱相同,只是埠不同,這樣則只要啟動成功一個或多個就會認為全部啟動成功。通過查詢有可以通過程序pid號來判斷程序是否存在,但redis服務未啟動之前我們誰也不知道它的程序pid是多少。最終我想到通過字串來判斷所有的redis服務是否全部啟動成功程式碼如下:#服務名(儘量寫詳細)
servername="/usr/local/redis-4.0.8/src/redis-server"#每個redis服務埠,每一個埠的配置檔案啟動一個redis服務ports=('6371' '6373' '6374' '6375' '6376' '6378' '6379' '6380' '6381')#獲取所有的redis服務的程序資訊redis=`ps -aux | grep $servername`echo $redis#判斷埠是否存在於redis服務資訊中for port in ${ports[*]};do#這句話的意思是判斷port這個字串是否在redis這個字串中if [[ $redis =~ $port ]]
then echo $portelse echo "no"fidone最終解決了這個問題

相關推薦

shell通過程序判斷redis服務是否啟動

動指令碼後,不知redis服務是否全部啟動成功,查詢了shell中許多判斷自啟動是否執行成功的方法,經測試都失敗。最終發現多種方法只能判斷shell語句指令碼是否執行成功,並不能來判斷redis服務。我開始思考,先去執行自啟指令碼,然後去判斷程序是否存在這個程序,這樣不就可以

PHP程序連接redis實例做緩存

unix時間戳 auto 配置 相關操作 store $_server fun 自動刪除 method 1、redis配置: $CONFIG_REDIS = array( array(‘host‘ => ‘192.168.19.29‘, ‘port‘ =>

javaweb通過介面實現檔案壓縮和下載(包括單檔案下載,檔案批量下載)

  程式設計師在做web等專案的時候,往往都需要新增檔案上傳、下載、刪除的功能,有時是單檔案,有時多檔案批量 操作,而這些功能的程式碼程式設計師可以自己收藏起來當成工具使用,這樣,程式設計師在進行程式設計的時候就會事半功倍 了,那麼接下來的部落格將會介紹各個框架的檔案上傳和下

01.一個伺服器上釋出redis服務

  下載地址:https://github.com/MSOpenTech/redis/releases。 Redis 支援 32 位和 64 位。這個需要根據你係統平臺的實際情況選擇,這裡我們下載 Redis-x64-xxx.zip壓縮包到 C 盤,解壓後,將資料夾重新命

一臺電腦開啟Redis服務

./bin/redis-server  ./redis6381.conf  第一步:修改埠號: #如果以後臺程序執行的話,就需要指定pid,你可以在此自定義redis.pid檔案的

同一臺機器上面建立tomcat服務,同時啟動 同時使得可以開機自動啟動

這個問題困擾了我一天, 終於研究出來了! 這裡我以兩個Tomcat為例。  jdk就不多說了, 網上一搜都是的。安裝配置好就ok了! 首先下載綠色版的Tomcat(網上好多)我用的是7.0.53 。把tomcat複製到一個目錄下 分別命名    1. 先設定第一個tomc

shell 指令碼: 執行緒判斷程序是否存在,不存在則重啟

shell 預熱 shell 中變數用 $ 區別 在shell指令碼中變數賦值等號前後不能有空格,有空格會被認為是命令 str='測試' echo $str arr=('test1' 'test2' 'test3') # 陣列, 每個元素間以空格隔開 echo

iview使用之怎樣通過render函式在table元件表頭新增圖示及判斷狀態

  在實際專案開發中,我們經常會用到各種各樣的表格,比如在表格中填加下拉選單,按鈕,圖示及可以根據狀態顯示對應文字等等,因為這段時間一直在做後臺管理系統,所以表格用的就比較多,當然UI元件庫我用的是iview,PRD(原型圖)上的表格要求要可以判斷多個狀態及在表頭上新增圖示,在網上搜了一段時間發現比

Python通過Manager方式實現無關聯程序共享資料

Python實現多程序間通訊的方式有很多種,例如佇列,管道等。但是這些方式只適用於多個程序都是源於同一個父程序的情況。如果多個程序不是源於同一個父程序,只能用共享記憶體,訊號量等方式,但是這些方式對於複雜的資料結構,例如Queue,dict,list等,使用起來比較麻煩,不夠靈活。Manager是一種較為高階

python之通過thread實現程序

程式碼如下: import threading, time class Test1(threading.Thread): def __init__(self, name): super().__init__(name=name) def run(self): print('tes

通過克隆虛擬機器建立虛擬機器

原連結:http://blog.sina.com.cn/s/blog_9ba89b9901019bn9.html 用好Vmware Workstation 的克隆來簡化虛擬機器的安裝配置:      好像是從Vmware5開始,增加了克隆的功能。在5.5中,克隆功能進

如何使用 Shell 指令碼檢視伺服器的埠是否開啟?

我們在進行伺服器配置的時候,經常要檢視伺服器的某個埠是否已經開放。如果伺服器只有一兩臺的話,那很好辦,只需要使用 `nc` 命令一個個檢視即可。 但是,如果你的伺服器是個叢集,有很多臺呢?那如果還一個個手動去檢查的話,效率肯定是無比低下的,年底裁員名單裡肯定有你。 在這種情況下,我們完全可以使用 Shel

[java]用md5判斷文件是否完全相同

tle name stub https pem puts 試用 多圖 ring 1.前言   由於相比較兩張圖片是否是相同,如果通過像素點比較感覺速度比較慢,當很多圖片進行比較時,效率就低很多了。由於每個文件md5基本上是唯一的,所用用獲取文件的md5來判斷是否相同文件。

怎樣用批處理執行exe文件

asc pri line views bat文件 tro ext sta each 怎樣用批處理來運行多個exe文件 @echo off start *****.exe start *****.exe start *****.exe star

同一臺服務器,啟動redis實例

ports ping spa margin span wan opp clas then 該腳本放到/etc/init.d/下,命名為redis #!/bin/sh #chkconfig: 2345 10 90 #description: Startup and stop

ubuntu apache 通過端口新建站點

width idt root vim png tar clu light .com cd /etc/apache2/sites-available 最近的虛擬機沒綁定域名,所以呢,就先用域名加端口新建幾個站點用著 1、 vim /etc/apapche2/ap

spring cloud實戰與思考(二) 微服務之間通過fiegn上傳文件1

jar 多文件 上傳文件 ret nmap spa 不同 port 問題 需求場景: 微服務之間調用接口一次性上傳多個文件。 上傳文件的同時附帶其他參數。 多個文件能有效的區分開,以便進行不同處理。   Spring cloud的微服務之間接口調用使用Feign。原裝的

5.通過參數註解接口參數的用法

names lena get Coding simple extend .org 通過 face 一、參數註解 遇到多個參數,因為不能因為兩三個參數去創建新的JavaBean類,對於參數比較少的情況下可以使用@Param註解。 UserMapper.java packag

開發亞馬遜 MWS中feed上傳修改商品資訊 通過GetFeedSubmissionResult判斷上傳資料是否成功

GetFeedSubmissionResultSample.php 中的方法如下 $config = array ( 'ServiceURL' => $serviceUrl, 'ProxyHost' => null, 'ProxyPort' => -1, 'MaxErrorRetry' =

Android RxJava操作符的學習---組合合併操作符---聯合判斷事件

1. 需求場景 需要同時對多個事件進行聯合判斷 如,填寫表單時,需要表單裡所有資訊(姓名、年齡、職業等)都被填寫後,才允許點選 "提交" 按鈕 2. 功能說明 此處採用 填寫表單 作為聯合判斷功能展示 即,表單裡所有資訊(姓名、年齡、職業等)都被填寫後,