Bonjour à tous et bonne année 2018 !!!

Je me permets d'ouvrir un topic car je n'ai malheuresement pas trouvé la réponse à ma question dans le forum

Je suis sous linux et j'écris un script python me permettant de lancer automatiquement les sous-routines que j'ai concernant du milieu poreux.

Mon problème c'est que je lance la dernière qui attend 4 arguments dans mon terminal :
1 pour le mode de traitement
0 le numéro du premier fichier à traiter
62 le numéro du dernier fichier à traiter
1 le pas pour traiter tous les fichiers

J'aimerai automatiser ceci sachant que je n'ai accès qu'à l'éxécutable et ne peut pas le modifier.


J'ai essayé plusieurs méthodes ( relier les commandes avec ; || ou &&) mais rien n'y fait, l'éxécutable bloque et attend ces arguments.

Voici mon code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
while i<len(angles):
	os.system('mkdir AVALANCHE_'+str(angles[i]))
	os.system('cd AVALANCHE_'+str(angles[i]))
	os.chdir('/work/granulaire_2/GRADYM_POUR_ETUDIANTS/CALCULS/AVALANCHE_'+str(angles[i]))
	os.system("cp ../INITIALISATION_LIT/gradym.x .")
	os.system("cp ../INITIALISATION_LIT/final.bin .")
	os.system("cp ../INITIALISATION_LIT/sphe.reli.forceBin.bin .")
	os.system("cp ../INITIALISATION_LIT/sphe.reli.forceMur.bin .")
	os.system("cp final.bin in_sim.bin")
	os.system("cp ../../POST_PROCESSING/POST_VISU/post_visu.x .")
	os.system("cp ../../POST_PROCESSING/POST_MATLAB/lecture_position_vitesse_dat.m .")
	
	fichier=open('sphe.dem','w')
	fichier.write(debut)
	fichier.write(str(round(sin_angle[i],4))+"   "+str(round(-cos_angle[i],4))+"   0.     0")
	fichier.write("\n")
	fichier.write(fin)
	fichier.close()
	
	os.system('./gradym.x')
	os.system('./post_visu.x && 1 && 0 && 62 && 1')  #ligne qui pose probleme car non automatisée
	
	os.system("cd ..")
	os.chdir('/work/granulaire_2/GRADYM_POUR_ETUDIANTS/CALCULS')
	i=i+1
Je vous souhaite une bonne journée !

Merci d'avance !