Thank you for reading this post, don't forget to subscribe!
Linux поставляется с множеством команд, каждая команда уникальна и используется в определенных случаях
Цель Linux — помочь вам быть максимально быстрым и эффективным.
Одним из свойств команды Linux является ограничение по времени.
Вы можете установить ограничение по времени Для любой команды, которую вы хотите запустить.
Если время истекает, команда прекращает выполнение.
В этом коротком руководстве вы изучите два метода использования ограничения времени в ваших командах.
Запустите команды Linux с помощью инструмента timeout
В Linux есть утилита командной строки, называемая timeout, которая позволяет вам выполнять команду с ограничением по времени.
Его синтаксис выглядит следующим образом.
1 |
timeout [OPTION] DURATION COMMAND [ARG]... |
1 |
# timeout 5s ping google.com |
m
минутыh
часыd
дни
1 |
-k, --kill-after=DURATION |
Вам нужно указать продолжительность, чтобы timeout знал, через сколько времени должен быть отправлен сигнал kill.
Например, показанная команда будет прекращена через 8 секунд.
1 |
# timeout 8s tail -f /var/log/syslog |
Запуск команд Linux с помощью программы Timelimit
Программа Timelimit запускает команду, затем завершает процесс по истечении заданного времени, используя заданный сигнал, сначала передает предупреждающий сигнал, а затем по истечении времени ожидания отправляет сигнал kill.
В отличие от опции timeout, Timelimit имеет больше опций, таких как killsig, warnsig, killtime и warntime.
Timelimit можно найти в репозиториях систем на основе Debian, и для его установки используйте следующую команду.
1 |
$ sudo apt install timelimit |
1 2 3 |
# Pacman -S timelimit # pacaur -S timelimit # packer -S timelimit |
В других дистрибутивах Linux вы можете скачать исходный код и установить его вручную.
После установки выполните следующую команду и укажите время.
1 |
$ timelimit -t10 tail -f /var/log/pacman.log |
Обратите внимание, что если вы не указываете аргументы, Timelimit использует значения по умолчанию: warntime = 3600 секунд, warnsig = 15, killtime = 120 и killsig = 9.