while Warunek (jeżeli cały czas to może być while 1 ?)
do
cmp_result=`cmp plik1 plik2`
if [-z "$cmp_result"] # czyli jeżeli tekst zwrócony przez cmp jest pusty to są identyczne
then
echo "Pliki pasują"
else
echo "Nie pasują"
fi
done
Jak już pisałem, nie mam doświadczenia w bashu, ale powinno działać.
No to ten kod który zaproponowałem powinien działać. A skoro ma chodzić cały czas to chyba można zastosować nieskończoną pętlę, przynajmniej inne rozwiązanie nie przychodzi mi do głowy.
Trzeba dodać składnie testa również przy 1, powinno działać:
while [1]
do
wget -q -O - http://www.cppreference.com/index.html | md5sum > weryfikacja
sleep 3
wget wget -q -O - http://www.cppreference.com/index.html | md5sum > weryfikacja1
cmp_result=`cmp weryfikacja weryfikacja1`
if [-z "$cmp_result"]
then
echo "Takie same"
else
echo "hrrrr..."
fi
done
Powinno działać
edit: Aha dopiero mi się przypomniało, jeszcze kwestia tego co zwraca md5sum, domyślnie dołącza nazwę pliku, więc to trzeba wziąć pod uwagę. No i w sumie można by nie wrzucać tej sumy do pliku, tylko do zmiennej.
//edit2: A sorry przy zastosowania pipe’a nie dołącza nazwy pliku, więc tu nazwa nie gra roli.
No ale można pozbyć się tworzenia plików i wynik md5sum wrzucić do zmiennej.