Como executar o menu de script após a saída da nova janela de terminal

0

Eu tenho um script que pede ao usuário informações para opções.

Ao selecionar a opção, eu a possuo para que execute um novo terminal e execute outro script para a opção especificada.

Eu ainda quero que o script de menu no primeiro terminal solicite a entrada do usuário em vez de sair do script. Algum feedback sobre isso seria muito apreciado.

The following was copied from a comment by the OP:

Aqui está um exemplo:

menue.sh

#!/binbash
clear
echo
echo
echo
echo "1. Option Here"
echo
echo -n "Choice"
read choice
echo $choice
case $choice in
  1) /root/scriptexample/./examplenewterminal.sh
     ;;
esac
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

examplenewterminal.sh

#!/bin/bash
xterm -e "/root/scriptexample/./example.sh"
bash
clear
echo

example.sh

#!bin/bash
clear
echo
echo
echo
echo
commands here, etc.
When you Control + C example.sh to stop commands executing, I want the xterm menu
to close and the script to continue to load the menue.sh in the original terminal.
    
por Peaceful 12.08.2015 / 17:32

1 resposta

1

  1. Seu comentário mostra menue.sh começando com #!/binbash . Isso deve ser #!/bin/bash . Ou, se você não estiver usando nenhum código específico de bash , poderá usar apenas #!/bin/sh .
  2. Você parece estar chamando seus scripts (de dentro dos outros scripts) como /root/scriptexample/./examplenewterminal.sh e %código%. Estes provavelmente devem ser apenas /root/scriptexample/./example.sh e %código%; ou seja, o /root/scriptexample/examplenewterminal.sh é desnecessário (e, embora eu ache que é inofensivo, é uma bagunça confusa). Você não precisa usar /root/scriptexample/example.sh sempre que estiver executando um script; você precisa usá-lo quando estiver executando um programa (script ou binário compilado) no diretório atual . Veja Problemas ao tentar executar o arquivo sh a partir de outro arquivo sh .
  3. Quando /./ termina ./ deve continuar em execução. Aparentemente, inicia outro shell example.sh (que eu não entendo); depois que terminar , examplenewterminal.sh limpa a tela, ecoa uma linha em branco e termina. Quando bash terminar, examplenewterminal.sh deverá continuar em execução. Mas então termina. (Qual é o examplenewterminal.sh suposto ser? Apenas um separador? Se você adicionar mais código a menue.sh após o ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ , ou colocar o código existente em um loop, ele deve continuar a ser executado após o término do menue.sh .
por 12.08.2015 / 20:54