Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Filipe_Moraes

[Resolvido] Executar script dentro de outro script

Recommended Posts

Pessoal, eu tenho 10 scripts separados, cada um sobe um serviço diferente no linux.

Porém, toda vez que tenho que baixar ou subir ou dar um restart, tenho que fazer o seguinte:

 

cd /etc/init.d

./servico1 start

./servico2 start

...

./servico10 start

 

Queria ter um script em que ele chamasse esses outros 10 scripts iniciando os serviços.

Não quero copiar os 10 scripts para dentro de um único script, eu quero é que esse novo script execute os outros 10 passando o parâmetro "start".

Tem jeito de fazer isso?

 

Obrigado pela vossa atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie o script com nome e local de sua preferência, pasta do usuário por exemplo, e dê permissão de execução.

 

O script terá basicamente a seguinte estrutura:

#!/bin/bash
/etc/init.d/servico1 start
/etc/init.d/servico2 start
...
/etc/init.d/servicoN start

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, eu tenho 10 scripts separados, cada um sobe um serviço diferente no linux.

Porém, toda vez que tenho que baixar ou subir ou dar um restart, tenho que fazer o seguinte:

 

cd /etc/init.d

./servico1 start

./servico2 start

...

./servico10 start

 

Queria ter um script em que ele chamasse esses outros 10 scripts iniciando os serviços.

Não quero copiar os 10 scripts para dentro de um único script, eu quero é que esse novo script execute os outros 10 passando o parâmetro "start".

Tem jeito de fazer isso?

 

Obrigado pela vossa atenção.

 

Boa tarde Filipe.

 

Bem.. partindo do conceito de que todos os arquivos comumente encontrados no diretorio "/etc/init.d" são scripts (Shell Scripts), podemos criar um script que chamará os demais sem problemas. Segue exemplo:

 

 #!/bin/bash

  if [ $1 == "start"]; then
  begin
    /etc/init.d/script1 start
    /etc/init.d/script2 start
    /etc/init.d/script2 start
    /etc/init.d/script2 start

  elif [ $1 == "stop"]; then
    /etc/init.d/script1 stop
    /etc/init.d/script2 stop
    /etc/init.d/script2 stop
    /etc/init.d/script2 stop   

  else
    echo " utilize start | stop ";

  fi;

 

Att

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.