Exéc. d'1 commande système UNIX ds1prog COBOL

simat1 Messages postés 2 Statut Membre -  
blux Messages postés 27997 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
Je souhaitais savoir s'il existait une commande COBOL permettant d'exécuter une commande système UNIX (équivalent de la fonction 'system' du C.
Merci beaucoup
A voir également:

4 réponses

Gragou Messages postés 5 Statut Membre 1
 
Salut,
Pas à ma connaissance mais je ne suis pas un super pro.
Qu'est ce que tu veux faire exactement?
0
blux Messages postés 27997 Date d'inscription   Statut Modérateur Dernière intervention   3 367
 
Salut,

COBOL ne permet pas ce genre d'appel en direct, mais par contre, en fonction de la plate-forme où tu développes, tu peux avoir des appels via CALL à des modules systèmes. Mais attention, si tu veux effectuer une commande, il va falloir synchroniser les process pour ne pas que ton programme reprenne la main tant que la commande n'est pas finie...

A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
0
Pitu Messages postés 1460 Statut Contributeur 125
 
Salut.

Est-ce que quelque chose t'empêche de créer dans ton prog cobol un fichier au format d'un shell unix, contenant tes lignes de commandes ?
Ensuite, comme ton programme cobol tourne sous unix, il est lancé par un shell, ou du moins, il peut l'être, je suppose.
Et ce shell de lancement peut très bien activer un second shell qui consiste à exécuter ton fichier de commandes ainsi créé par ton programme.

Non ?

...

a+
0
pjour
 
bonjour,
il est possible d'éxécuter une cde shell à partir du cobol.
il faut utiliser une procédure cobol de type :
call "CBL_EXEC_RUN_UNIT" using command-line
by value command-line-len
by reference run unit-id
by value stack-size
flags
returning status-code

bonne chance.
0
blux Messages postés 27997 Date d'inscription   Statut Modérateur Dernière intervention   3 367
 
Ca dépend de la plate-forme sur laquelle tu es, car un CALL n'est qu'un appel à un module externe...
0