Enviado em 20/08/2009 - 14:30h
Olá!
Tenho um programa fonte em Fortran que necessita de arquivos .dat para calcular um valor de média.
Esses arquivos .dat estão dentro de um diretório e eu precisava de um script que:
a) Listasse os arquivos .dat no diretório que os contém;
b) Modificasse o programa fonte em fortran (.f) substituindo para cada arquivo .dat;
c) Compilasse o programa fonte (.f) e gerasse um programa executável (.exe); e
c) Apresentasse na tela, após o pedido de execução do script, uma lista com duas colunas de forma que em uma aparecesse o nome do arquivo .dat utilizado nos cálculos e na outra aparecesse o valor calculado.
Tentei algumas coisas usando o comando sed mas não deu certo.
Um esboço do que tentei fazer:
#!/bin/ksh
for x in `ls /home/eder/Arquivos`
do
sed -e "s/$x/E[0-8]\+.dat/g" -i /home/eder/Arquivos/tes.f
f77 -o tes.exe /home/eder/Arquivos/tes.f
/home/eder/Arquivos/tes.exe
done
Como devo fazer? O que pode estar errado nesse script?
Tenho um programa fonte em Fortran que necessita de arquivos .dat para calcular um valor de média.
Esses arquivos .dat estão dentro de um diretório e eu precisava de um script que:
a) Listasse os arquivos .dat no diretório que os contém;
b) Modificasse o programa fonte em fortran (.f) substituindo para cada arquivo .dat;
c) Compilasse o programa fonte (.f) e gerasse um programa executável (.exe); e
c) Apresentasse na tela, após o pedido de execução do script, uma lista com duas colunas de forma que em uma aparecesse o nome do arquivo .dat utilizado nos cálculos e na outra aparecesse o valor calculado.
Tentei algumas coisas usando o comando sed mas não deu certo.
Um esboço do que tentei fazer:
#!/bin/ksh
for x in `ls /home/eder/Arquivos`
do
sed -e "s/$x/E[0-8]\+.dat/g" -i /home/eder/Arquivos/tes.f
f77 -o tes.exe /home/eder/Arquivos/tes.f
/home/eder/Arquivos/tes.exe
done
Como devo fazer? O que pode estar errado nesse script?