Let me know, it is suppose to add the route before trying to ping so it won't fail.
If I get rid of the variables, and just add
fi
ip route add 8.8.4.4 via 192.168.10.1 dev eth5
WAN1PACKETLOSS="$(ping -I eth5 8.8.4.4 -c 3 -W 1 | grep -e "packet loss" | awk '{print $7}')"
Everything works.
5/23/22 @ 14:22:06: ./wanfail.sh - WAN Status: wan0 is connected...
05/23/22 @ 14:22:06: ./wanfail.sh - WAN Status: Route exists for 8.8.8.8 via 100.64.0.1 dev eth0...
05/23/22 @ 14:22:10: ./wanfail.sh - WAN Status: wan0 has 0% packet loss...
05/23/22 @ 14:22:10: ./wanfail.sh - WAN Status: wan1 enabled...
05/23/22 @ 14:22:10: ./wanfail.sh - WAN Status: wan1 is connected...
05/23/22 @ 14:22:10: ./wanfail.sh - WAN Status: Creating route 8.8.4.4 via 192.168.10.1 dev eth5...
05/23/22 @ 14:22:10: ./wanfail.sh - WAN Status: Created route 8.8.4.4 via 192.168.10.1 dev eth5.
05/23/22 @ 14:22:12: ./wanfail.sh - WAN Status: wan1 has 0% packet loss...
05/23/22 @ 14:22:12: ./wanfail.sh - WAN0 Active: Verifying WAN0...
05/23/22 @ 14:22:12: ./wanfail.sh - WAN0 Monitor: Monitoring WAN0 via 8.8.8.8 for Failure...