Automatizar execução de programas?

Iniciado por gabriel_leme, 18 de Fevereiro de 2013, 17:55

tópico anterior - próximo tópico

gabriel_leme

Pessoal, estou com uma dúvida. Queria saber se existe algum recurso que automatize a execução de programas por linha de comando.

Vou explicar melhor:
Eu conheço o makefile, que ajuda muito na hora de fazer a compilação de programas complexos.
Eu queria algo equivalente para a execução, pois tenho 5 programas, três da minha autoria e outros dois que não foram feitos por mim, e preciso executar eles na ordem correta, pois a saída de um é a entrada do que será executado em seguida. Alguns deles dependendo da entrada podem demorar horas para terminar a execução, por isso queria saber se consigo automatizar isso, ou seja, com um único comando especificar que quero que os 5 sejam executados um após o término do outro (com direito a redirecionar entradas e saídas e outras opções por linha de comando).
É possível?? Se sim, me ajudaria um bocado!  ;D
Vlws ae!

eliseu_carvalho

Programação não é bem a minha área, mas acho que é possível automatizar isso aí com um shell script, porém, sou um completo zero à esquerda nesse assunto  :-[
Vamos ver se alguém mais especializado consegue dar dicas melhores.

irtigor

A principio é só colocar em um arquivo, com o shebang na primeira linha:


#!/bin/bash

__comandos__

Darcamo

Como uma programa depende do sucesso do anterior, você também pode colocar tudo em uma linha só unindo com "&&".
Por exemplo,
./programa1 argumentos && ./programa2 argumentos2 && ./programa3 ...

No terminal isso funciona, mas não sei se o mesmo vale para shell script.

irtigor

Funciona do mesmo jeito, imagino que é algo assim que ele está fazendo, e só falta automatizar.