ip 监视器:响应事件

ip 监视器:响应事件

我想运行一个脚本来响应某些网络事件,为此我正在使用以下命令监视网络路由

ip monitor route dev enp3s0 

ip monitor等待事件并在事件发生时打印它们。

我希望这些事件触发另一个脚本。

我有一个我认为是粗略的解决方案:

 ip monitor route dev enp3s0 > /var/log/ipmon.log

进而

 while inotifywait /var/log/ipmon.log; do something;done;

但我怎么能do something不使用inotifywait.

答案1

将其输出提供给 shell(或任何其他语言)循环:

ip monitor route dev enp3s0 | while read event; do
    case "$event" in
    'Deleted default'*)
        ...
        ;;
    'local '*)
        ...
        ;;
    ...)
        ...
        ;;
    ...
    esac
done

相关内容