Есть ли способ с помощью tmux показывать каждую сессию одну за другой, так что
- пользователь может нажать Ctrlb d, чтобы отсоединить, чтобы закончить просмотр
- или нажмите Ctrld, чтобы выйти из сеанса
- или нажмите Ctrlc, чтобы остановить запущенный процесс, а затем либо отсоединиться, либо выйти
?
решение1
Вы можете написать скрипт оболочки, который будет проходить по сеансам, что-то вроде (не тестировалось):
#!/bin/bash
tmux ls -F '#{session_id} #{session_name}'|while read i; do
s=$(echo $i|awk '{print $1}')
name=$(echo $i|sed 's|^[^ ]* ||')
printf "session $name? "
read -n1 k </dev/tty
echo
case $k in
d)
tmux detach -s$s
;;
D)
tmux kill-session -t$s
;;
c)
tmux detach -Ps$s
;;
esac
done