|
|
|
|
Bonjour, je ne comprends pas pourquoi le script suivant ne marche pas (sachant qu'il marche très bien si remplace la ligne
for N in $(seq 1020 20 1300)
par la ligne
for N in $(seq 900 20 1000)
#!/bin/sh for N in $(seq 1020 20 1300) do ret=1 while [ $ret != 0 ] do rm -f out make echo "N = $N" echo echo "Elapsed time :" time -p ./out input.txt $N echo ret=$? if [ $ret != 0 ] then echo echo "ERROR : exit program and new run" echo fi done if [ ! -d ../Outputs ] # si le repertoire ../Outputs n'existe pas on le cree then mkdir ../Outputs fi if [ $N -le 9 ] then newdir=Part000$N elif [ $N -le 99 ] then newdir=Part00$N elif [ $N -le 999 ] then newdir=Part0$N else newdir=Part$N fi mkdir $newdir mv Mean.txt $newdir mv RandomInitialConditions.txt $newdir cp input.txt $newdir cp system.txt $newdir cp therm.txt $newdir rm -f Particle* rm -f Volumes.txt tar -cvzf $newdir.tar.gz $newdir mv $newdir.tar.gz ../Outputs rm -rf $newdir done
Répondre à Radek
|
Je pense que ca plante lors de l'execution de la ligne :
time -p ./out input.txt $N Ton script ni ton makefile ne sont en cause à priori. Je pencherais plutot pour ton executable généré par la commande make. En fait je pense que le nombre que tu transmet à ton executable est trop gros. Regarde dans les sources de ton programme !
|