Возвращаемое значение функции ожидания

Я использую функцию тайм-аута на debian, чтобы подождать 5 секунд для моего скрипта. Отлично работает, но проблема заключается в том, что мне нужно вернуть значение. Как 1 для таймаута и 0 без таймаута. Как я это сделаю?

Посмотрите мой код:

timeout 5 /some/local/script/connect_script -x 'status' > output.txt # here i need the return of timeout 

Как вы видите, мой connection_script -x 'status' возвращает статус в виде строки и печатает его на экране (возможно, вы не можете видеть это). Исход этой проблемы заключается в том, что если сервер (для connect_script) заблокирован, скрипт ничего не делает , Вот почему мне нужен тайм-аут. И когда он истекает, я хочу перезагрузить сервер. Я могу это сделать, но я понятия не имею, как я могу узнать, если его тайм-аут или нет …

  • while: команда не найдена
  • Каков наилучший способ определить рабочий каталог для процесса UNIX с помощью «ps»?
  • Почему звездочка в команде приводит к расширению цикла?
  • Почему не выполняется условная работа, когда я использую ее напрямую без переменной?
  • Скрипт для прокрутки папок с числовыми именами
  • «Sudo halt» дает bash шанс написать свою историю?
  • zsh: SHARE_HISTORY или INC_APPEND_HISTORY перерывы EXTENDED_HISTORY
  • Как добавить данные о подключении к сети или пользователям в записи истории?
  • 2 Solutions collect form web for “Возвращаемое значение функции ожидания”

    Если timeout , он выходит со статусом 124 ; вы можете проверить это, чтобы определить, был ли сценарий отключен или нет.

    Согласно руководству ( man timeout ):

    Тайм-аут Synopsis [OPTION] NUMBER [SUFFIX] COMMAND [ARG] …

    […] Если команда отключена, затем выйдите со статусом 124. В противном случае выйдите со статусом COMMAND

    Объедините это со знанием того, что статус выхода или возвращаемое значение сохраняется в переменной, $? , и у нас есть…

     timeout 5 /some/local/script/connect_script -x 'status' > output.txt RETVAL=$? 

    Затем вы можете сделать больше обработки на основе значения $RETVAL , которое будет 124, если оно $RETVAL , или какое-либо другое значение, основанное на статусе выхода connect_script .

    Interesting Posts

    русские буквы в консоли gentoo как '?'

    Как / где переменные среды хранения оболочки хранятся?

    Возможно ли сделать scp сбоем, когда вы делаете локальную копию?

    Использовать зашифрованный / домашний свежий Debian, созданный в Mint

    Oracle Linux yum не работает после обновления

    btrfs raid1 не использует все диски?

    Как определить, какие процессы используют, сколько энтропии из / dev / urandom

    Предоставьте два аргумента одному варианту с помощью getopts

    SSH с Cron: ключ RSA не принят

    Частное VPN-сжатие для более быстрого доступа в Интернет

    это скрипт, который запускается под текущей оболочкой или дочерней оболочкой?

    Показывать наложение текста поверх приложений, например, для создания скринкаста или презентации

    Объедините в PDF первую страницу нескольких файлов odt в алфавитном порядке

    восстановить последнее состояние полного снимка lvm

    Установить приложения KDE под Gnome?

    Linux и Unix - лучшая ОС в мире.