2016-03-17 16 views
3

У меня есть ODROID-c1 +, что я хотел бы использовать в качестве сервера пи-отверстия (в основном Dns Скрытого для объявлений)хвоста постоянно обновляются файл_журнал и выполнить действие, когда строка найдена

Я хотел бы триггер, который должен мигать, когда строка найдена в файле журнала.

Я также wiringpi установлен и работает, на примере blink.sh работает как ожидается, следующим образом:

PIN=0 

gpio mode $PIN out 

while true; do 
    gpio write $PIN 1 
    sleep 0.5 
    gpio write $PIN 0 
    sleep 0.5 
done 

Как бы один идти о добавлении триггера tailf в этом примере?

ответ

2

непроверенные, но я верю, что вы можете кормить вывод tail в ваше время цикла:

#!/bin/bash 
pin=0 
gpio mode $pin out 
tail -f logfile | while read entry 
do 
    if [ "$entry" = "string" ]; then 
     gpio write $pin 1 
     sleep 0.5 
     gpio write $pin 0 
     sleep 0.5 
    fi 
done 

Прописных имена переменных традиционно зарезервированы для использования оболочки.

1

Благодарим вас за отличное начало работы miken32!

Я был в состоянии взять пробу и настроить его для работы моего приложения со следующим:

#!/bin/bash 
pin=0 
gpio mode $pin out 
gpio write $pin 0 
tailf /var/log/pihole.log | while read INPUT 
do 
    if [[ "$INPUT" == *"/etc/pihole/gravity.list"* ]]; then 
     gpio write $pin 1 
     sleep 1 
     gpio write $pin 0 
    fi 
done 

Еще раз спасибо за вашу помощь!

+0

Рад, что я могу помочь. Способ работы сайта заключается в том, что вы a) проголосовали за любые ответы, которые считали полезными, и b) отметьте тот, который решил вашу проблему как «принятый», нажав зеленую галочку. Если вы не придумали совершенно другое решение из предоставленных, вам не нужно публиковать ответ на свой вопрос. – miken32