2 beğenilme 0 beğenilmeme
11 kez görüntülendi
Bilgi Teknolojileri kategorisinde tarafından soruldu
linux bash script check command output
    

3 Cevaplar

0 beğenilme 0 beğenilmeme
Bilge (109k puan) tarafından cevaplandı
Aşağıda bir servisin kontrolu yapılıyor. EV değişkeni beklediğimiz değer. (Expected Value) Eğer komut çalıştırılınca (output satırı işlenirken servis komutu çalışacak) bir hata oluşmazsa birinci if bloğuna girilecek. $OUTPUT $EV değerine eşitse servis durum komutumuz istediğimiz çıktıyı vermiş demektir. Vermemiş olsaydı  else bloğunda servisi  start etme imkanımız var.

#!/bin/bash
echo "Checking Server..."

EV="clamd is running."  
OUTPUT=$(/etc/init.d/clamav-daemon status)
if [ $? -eq 0 ]; then
    echo "Komut çalıştırıldı, çıktı kontrol ediliyor!"
    if [ "$OUTPUT" =  "$EV" ]
    then
        echo "Clamav çalışıyor :)'"
    else
        echo "Clamav çalışmıyor! :("
        /etc/init.d/clamav-daemon start
    fi
else
    echo FAIL
fi
0 beğenilme 0 beğenilmeme
Bilge (109k puan) tarafından cevaplandı

Farklı bir örnek;

#!/bin/bash

echo "Checking Server..."

#/etc/init.d/clamav-daemon status

#/etc/init.d/clamav-daemon start

OUTPUT=$(/etc/init.d/clamav-daemon status)

EV="clamd is running."

if [ $? -eq 0 ]; then

    if [ "$OUTPUT" =  "$EV" ]

    then

echo "clamav ok :)"

    else

        echo "clamav stopped :("

    fi

else

    echo FAIL

fi

OUTSPAM=$(/etc/init.d/spamassassin status)

EV2="spamd is running."

if [ $? -eq 0 ]; then

    if [ "$OUTSPAM" =  "$EV2" ]

    then

        echo "spam ok ;)"

    else

        echo "spam stopped :("

    fi

else

    echo FAIL

fi

0 beğenilme 0 beğenilmeme
Bilge (109k puan) tarafından cevaplandı

rkhunter için günlük kontrol;

#!/bin/sh

 (

 rkhunter --versioncheck

 rkhunter --update

 rkhunter -c --cronjob 

 ) | mail -s 'rkhunter Günlük Kontrol' adem@nasyatek.com

En güncel teknolojiler hakkında yeni şeyler öğren, bilmediklerini sor, bildiklerini paylaş...

Kategoriler

...