3

我有一个 odroid-c1+,我想用作 pi-hole 服务器(基本上是用于广告的 dns blackhole)

当在日志文件中找到字符串时,我想触发 LED 闪烁。

我还安装了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

如何将尾部触发器添加到此示例中?

4

2 回答 2

2

未经测试,但我相信您可以将输出从tailwhile 循环中输入:

#!/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

大写变量名传统上是为 shell 使用而保留的。

于 2016-03-18T00:50:37.157 回答
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

再次感谢你的帮助!

于 2016-03-19T07:47:36.833 回答