Wyciągam IP:
Kod: Zaznacz cały
RS=$(ip r s | grep default | awk '{ print $3 }')
Następnie chcę porównać ten wynik w następujący sposób:
Kod: Zaznacz cały
if [[ "$RS" = '192.168.1.1' ]]; then
Jak to ogarnąć?
Kod: Zaznacz cały
RS=$(ip r s | grep default | awk '{ print $3 }')
Kod: Zaznacz cały
if [[ "$RS" = '192.168.1.1' ]]; then
Kod: Zaznacz cały
#!/bin/bash
RS=$(ip r s | grep default | awk '{ print $3 }')
if [[ "$RS" = '192.168.0.254' ]]
then
echo 'OK'; exit 0
else
echo 'NOK'
#tutaj jakieś przetwarzanie
fi
Kod: Zaznacz cały
#!/bin/bash -x
LOG=/tmp/routechck
echo '---------------------------------' >> $LOG
date >> $LOG
RS=$(ip r s | grep default | awk '{ print $3 }')
if ping -c 1 8.8.8.8; then
if [[ "$RS" = '192.168.1.1' ]]; then
exit
fi
else
if ip r s | grep 192.168.1.2; then
ip route del default; ip route add default via 192.168.1.1;
fi
fi
Kod: Zaznacz cały
+ [[ 192.168.110.2 = \1\9\2\.\1\6\8\.\1\1\0\.\1 ]]
Kod: Zaznacz cały
#!/bin/bash
LOG=/tmp/routechck
echo '---------------------------------' >> $LOG
date >> $LOG
DEF=$(ip r s | grep default | awk '{ print $3 }' | cut -c 13) # 1=MX,2=FR
ping -c 1 89.XX.XX.XX
if [ $? == 0 ]; then
echo 'PING 89.XX.XX.XX OK' >> $LOG;
if [ "$DEF" == 2 ]; then
echo FR 2=2 >> $LO;
ip route del default;
ip route add default via 192.168.1.1;
fi
else
echo 'PING 89.XX.XX.XX NOT OK' >> $LOG;
if [ "$DEF" == 1 ]; then
ip route del default;
ip route add default via 192.168.1.2;
fi
fi