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

Fermé
simat1 Messages postés 2 Date d'inscription jeudi 13 mars 2003 Statut Membre Dernière intervention 18 mars 2003 - 18 mars 2003 à 16:36
blux Messages postés 26606 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 17 janvier 2025 - 7 sept. 2010 à 17:27
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 Date d'inscription lundi 18 novembre 2002 Statut Membre Dernière intervention 16 juin 2003 1
19 mars 2003 à 13:16
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 26606 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 17 janvier 2025 3 326
19 mars 2003 à 15:07
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 1441 Date d'inscription jeudi 3 octobre 2002 Statut Contributeur Dernière intervention 5 janvier 2013 125
21 mars 2003 à 15:19
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
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 26606 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 17 janvier 2025 3 326
7 sept. 2010 à 17:27
Ca dépend de la plate-forme sur laquelle tu es, car un CALL n'est qu'un appel à un module externe...
0