exit 1
завершится с кодом ошибки 1, а exit 0
завершится с кодом ошибки 0.
Например:
rsync -azvh /dir -e ssh usr@server.com:/
RESULT="$?"
# check result of rsync db's
if [ "$RESULT" != "0" ]; then
echo -e "rsync exit Code:" $RESULT "\nFAILED to rsync backups"
exit 0
else
echo "SUCCESSFULL rsync of backups"
exit 1
fi
(Объединение различных комментариев в ответ)
В настоящее время невозможно изменить метрику маршрута. В сообщении 2005 г. о состояниях LKML:
[...] The metric/priority cannot be changed because we do not have separate fields for the fields to match and the new values so if you specify a metric the entry simply won't be found and the request fails with ENOENT because NLM_F_CREATE is not specified. This is a limitation of the current protocol and it might be a good idea to to change this, however it's non trivial [...]
Похоже, это относится как к ip route change
, так и кip route replace
-первое приводит к ошибке для меня, а второе создает дополнительный маршрут, как рекламируется (его справочная страница гласит, что replace
заменит или создать маршрут ). Это согласуется с тем, что ядро отвечает ENOENT, а ip route replace
следует запросом на создание маршрута.
Таким образом, решение состоит в том, чтобы удалить существующий маршрут и добавить новый. например.
ip route del 40.2.2.0/24 via 30.1.2.2
ip route add 40.2.2.0/24 via 30.1.2.2 metric 1234
ifmetric
позволит вам изменять метрику вашего маршрута на лету, учитывая интерфейс, через который проходят маршруты, которые вы хотите изменить.
ifmetric <iface> [<metric>]
Например, используйте ifmetric tun0 12
, чтобы изменить метрику на 12 для всех маршрутов, проходящих через tun0
.