Affecter un Unit à la sortie standard
Bonjour,
J'ai des programmes avec la trame suivante :
Code:
1 2 3 4 5 6 7
| PROGRAM P1
<Instruction diverse>
WRITE(13,'(''Message à affecter à la sortie standard'')')
Instruction diverse
END PROGRAM |
Je souhaite que mon message "Message à affecter à la sortie standard" s'affiche sur mon écran. En d'autre terme, je souhaite que mon unit 13 soit redirigé vers la sortie standard. Je voudrais par exemple faire cette assignation dans un shell de lancement. Est ce que cela se fait?
Je sais que que je pourrais écrire la ligne suivante:
Code:
WRITE(6,'(''Message à affecter à la sortie standard'')')
Mais ce n'est pas ce que je veux.
Je vous remercie d'avance.
pas besoin du fichier DefOpen.txt
Bonjour Sylvain et merci pour ta réponse.
Ce que je crois que ce que tu me proposes est faisable en FORTRAN/IBM/AIX sans utilisation du fichiers de gestion d'ouverture de fichiers et d'assignation à un flux (DefOpen.txt dans ton exemple).
En effet, j'ai regardé dans la doc FORTRAN XLF (le FORTRAN que j'utilise) et l'ai testé derrière : il me suffit de créer un script shell de lancement de fichier dans lequel j'ai les instruction suivantes:
début du shell :
XLFRTEOPTS "unit_vars=yes"
XLFUNIT_unit1 = fic1
XLFUNIT_unit2 = fic2
...
export XLFRTEOPTS XLFUNIT_unit1 XLFUNIT_unit2
programme
fin du shell :
(Cette technique ne nécessite pas d'option de compilation spécifique)
Ainsi je n'ai pas à modifier les instructions du type :
OPEN(unit, iostat=...)
en instruction du type :
OPEN(unit, NomFichier, iostat=...).
Cela fonctionne bien!
Cependant dans mon shell, je n'arrive pas à affecter un unit (différent de 6) à la sortie standard et je ne l'ai pas trouvé dans la doc XLF
En fait ce, qu'il me faudrait c'est une instruction du type :
XLFUNIT_unit=stdout (j'ai déjà essayé ça, ça ne fonctionne pas)