Задать вопрос
Anna_Repina
@Anna_Repina
Хочу все знать

Как «убить» и закрыть tmux через 10 минут?

Всем привет!
Написан скрипт, в конце которого разворачивается tmux с нагрузочным тестированием с различными параметрами. Длится он 10 минут.

Хочу узнать, есть ли какой -то флаг (на подобии -t в винде) для завершения процесса спустя время.
Например

tmux kill-server -t 610

Эта конструкция у меня не сработала

что бы он убил процесс через 10 минут и 10 секунд и закрыл tmux, для того что бы скрипт продолжился дальше?
  • Вопрос задан
  • 143 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Есть утилита timeout, как раз для убийства через XX времени.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
sotvm
@sotvm
Умный поймёт, а дураку и так всё равно.
sleep 600 && killall tmux
Ответ написан
erge
@erge
Примус починяю
## запускаем tmux и отправляем его в фон, добавив в конце строки &
## где ... - это ваши параметры запуска tmux
tmux ... &

##  ждем 610 сек и прибиваем tmux
sleep 610 && killall -9 tmux


UPD:
если надо убить конкретный tmux, то в скрипте с вызовом tmux пишем...

#!/bin/bash
tmux new-session \; \
  send-keys 'htop' C-m \; \
  split-window -v -p 75 \; \
  split-window -h -p 30 \; \
 send-keys 'watch -n1 sensors' C-m \; \
  select-pane -t 1 \; \
  split-window -h   \; \
  send-keys './disk.sh' C-m \; \
  split-window -v -p 20 \; \
  send-keys './stress.sh' C-m \; &

sleep 610 && kill -9 $!


PS: обратите внимание, что в конце команды tmux стоит амперсанд - &
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы