Как понять значение этой строки?
каждая команда после завершения возвращает код возврата.
для if важно не сравнение чего-либо с чем-либо, а именно код возврата команды, который 0 - успех, не ноль - ошибка.
поэтому if [ A == B ] - это не сравнение а выполнение команды[ ]
так и тутif ping - это не сравнение, а выполнение команды pingи получение ее кода возврата

> /dev/null 2> /dev/null 
> - перенаправление вывода stdout в нул
2>перенаправление вывода stderr в нул
Это чтобы на экран команда ничего не выводила - ни основной вывод ни ошибки

p.s. посмотреть код возврата можно через переменную $?
ping -c 1 google.com
echo $?

ping -c 1 google.com1
echo $?
">" "2>" это перенаправление потока вывода и потока ошибок исполнения ping в /dev/null, т.е его выводы нам не интересны. https://habr.com/ru/post/55136/

в условии if %программа% проверяется переменная ERRORLEVEL, не нулевое значение которой считается за ошибку.
соответственно данное условие будет правильным при выдаче програмкой ERRORLEVEL=0.

ping -c 2, сколь помню, выдает ERRORLEVEL=0 если оба пакета нормально прошли туда-обратно.