- mac=$(awk '{ sub(/#.*/, "") } /trc[0-9]/ && ! /-rf/ { gsub(/;/, " "); print $6}' $DHCPCONF)
- broadcast=$(ip add show dev eth1 |awk '$1=="inet" {sub(/\/.*/, ""); sub(/\.[0-9]*$/, ".255", $2); print $2; exit}')
-
- for m in $mac; do
- log_action_msg "Wake-up $broadcast ($m)"
- wakeonlan -p 7 -i $broadcast $m
+ for mac in $(awk '{ sub(/#.*/, "") } /trc[0-9]/ { gsub(/[;{}]/, " "); print $5}' $DHCPCONF); do
+ broadcast=$(grep $mac $DHCPCONF | sed 's/.* \([0-9.]*\)\..*/\1.255/')
+ host=$(awk '{sub(/#.*/, "")} /'$mac'/ {gsub(/[{}]/, " "); print $2}' $DHCPCONF)
+ log_action_msg "Wake-up $host (WOL $mac $broadcast)"
+ wakeonlan -p 7 -i $broadcast $mac