Posso creare e manipolare schermi unix in uno script?

Ho un ambiente di lavoro sul mio computer porttile Ubuntu in cui voglio utilizzare tre diverse schermate.

Per esempio. in terminal, scrivo solitamente

  • Come faccio a clonare una partizione lvm ext3 su un'unità minore?
  • È / dev in linux virtuale?
  • mdadm - function di rimodellamento bloccato
  • Configurazione di distribuzione su più server
  • Duplicare Linux Installa su più server
  • Router Linux e firewall con la contabilità IP
  • screen -S mywork run_server_1 

    quindi, ctrl-a c per creare una seconda schermata

     run_server_2 

    eccetera.

    Vorrei scrivere uno script per automatizzare l'impostazione di questo ambiente, ma come posso controllare più schermi da uno script?

    Aggiornamento: Voglio davvero essere in grado di farlo da uno script di shell, non da una configuration dello schermo. file. C'è un modo per farlo?

  • Come sincronizzare le chiamate di command su Linux
  • Quali file devo recuperare i database MySQL da Ubuntu?
  • strumenti per gestire la virtualizzazione kvm
  • Binari simili a Busybox che supportno ext3 e ext4?
  • Strumenti di distribuzione e monitoraggio per ambiente java / tomcat / linux
  • Supervisore VS cronjob
  • 3 Solutions collect form web for “Posso creare e manipolare schermi unix in uno script?”

    La lettura delle pagine e dei tutorial degli uomini aiuta

    Direi che vuoi fare è creare un file $ HOME / .screenrc.multiwin

     # read in your normal screenrc # before anything else source $HOME/.screenrc # now start opening windows # it's possible to set the window title with # the -t option # you can also specify the window number # to launch in screen -t server1 5 run_server_1 screen -t server2 6 run_server_2 

    Poi correre

     screen -c $HOME/.screenrc.multiwin 

    farà quello che ti serve

    I comandi possono essere passati dall'esterno usando la screen -S sessionname -X command per la screen -S mywork -X screen run_server_2 istanza screen -S mywork -X screen run_server_2 creerebbe una nuova window (uguale a ctrl-a c ) ma quella window avrebbe eseguito run_server_2 in esso. A differenza di quanto lo fa a mano, non ci sarà una shell in esecuzione in quella window, quindi quando run_server_2 esce, la window verrà chiusa.

    Controllare più schermi è semplicemente una questione di assicurarsi che siano tutti nominati con -S

    Credo che tmux sia molto più facilmente scriptable di schermo per questo tipo di scopo. Il programma tmux accetta i propri comandi come argomenti nella row di command, per esempio per lanciare due windows: "tmux new-session -d '/ bin / bash' \; new-window -d 'top'". Nella prima window verrà eseguito un shell "bash" interattivo e nella seconda window verrà eseguito "top".

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.