Como exibir três whiptail na mesma tela?

0

Eu tenho três processos muito longos que preciso monitorar. Em vez de ter três janelas de terminal abertas, cada uma com uma barra de progresso whiptail separada. Eu estou procurando uma maneira de enviar três whiptail saída da barra de progresso para um único terminal usando a tela ou tmux? Isso é possível?

Por exemplo, eu preciso da seguinte saída enviada três vezes para a tela do terminal ao mesmo tempo.

#!/bin/bash
{
  DEPLOYING=0;
  while [ "$DEPLOYING" -le "100" ]; do
      DEPLOYING=$(deploy $ENVIRONMENT)
  done
} | whiptail --gauge "Deploying application to $ENVIRONMENT environment..." 6 50 0
    
por Michael Niño 03.07.2017 / 06:02

1 resposta

1

Você pode usar o seguinte exemplo do tmux:

tmux -f /dev/null \
 new-session -s mywhiptail 'mycmd 1' \; \
 split-window -v -l 8 -t 0 'mycmd 3' \; \
 split-window -v -l 8 -t 0 'mycmd 2'
tmux kill-session -t mywhiptail

onde mycmd é seu script executando whiptail. Eu adicionei um parâmetro opcional (1,2, ou 3) para mostrar em qual ordem você precisa dar os comandos se quiser que eles apareçam na ordem correta na tela. -l 8 define a altura da janela do whiptail como 8 linhas; você pode querer variar isso.

    
por 03.07.2017 / 19:52