[+]Skrypt bash nigdy się nie konczy

Potrzebujesz pomocy z C, C++, perl, python, itp.
bullseye
Posty: 76
Rejestracja: 19 grudnia 2008, 22:05
Lokalizacja: Warszawa

[+]Skrypt bash nigdy się nie konczy

Post autor: bullseye »

Hej, zdziałałem sobie kod który wysyła mi dane z "koparki" do MQTT, i dodałem go do crontaba by wykonywał się co minutę.
Problem w tym że chyba moje wypociny sie nigdy nie kończą, bo zapychają serwer i koniec.

Mógłby ktoś zerknąć i podpowiedzieć co zrobić by skrypt wykonywał sie tylko raz ?

Kod: Zaznacz cały

#!/bin/bash
# MQTT dane
BROKER=""
TOPIC=""
USER=""
PASS=""

# Wyslij
tail -f /var/log/hive-agent.log | while read -r line; do
    json_line=$(echo ${line} | awk -F'[<>]' {'print $2'})
    if $(echo "$json_line" | jq -e 'has("method")'); then
        mosquitto_pub -h $BROKER -t $TOPIC -u "$USER" -P "$PASS" -m "$json_line"
    fi
done
Awatar użytkownika
Yampress
Administrator
Posty: 6400
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Re: Skrypt bash nigdy się nie konczy

Post autor: Yampress »

zrobiłeś pewnie jakieś zapętlenie we algorytmie
bullseye
Posty: 76
Rejestracja: 19 grudnia 2008, 22:05
Lokalizacja: Warszawa

Re: Skrypt bash nigdy się nie konczy

Post autor: bullseye »

wydawało mi się że nie ma żadnej pętli nieskończoności :(
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Re: Skrypt bash nigdy się nie konczy

Post autor: mariaczi »

Uruchom sobie w konsoli

Kod: Zaznacz cały

tail -f /var/log/hive-agent.log 
i zobacz jak się zachowa/co się będzie działo.
Dodatkowo

Kod: Zaznacz cały

man tail
i odszukaj objaśnienie dla opcji "-f".
bullseye
Posty: 76
Rejestracja: 19 grudnia 2008, 22:05
Lokalizacja: Warszawa

Re: Skrypt bash nigdy się nie konczy

Post autor: bullseye »

Głupi błąd, nie doczytałem :)
Dzięki wielkie !
Zablokowany