Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1420 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Rediriger la sortie standart vers un Xterm

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Rediriger la sortie standart vers un Xterm

n°587664
HellodeLu0​07
Posté le 10-12-2003 à 17:53:24  profilanswer
 

Bonjour. J'ai un programme en C, que je lance a partir d'un Xterm, appelons le 1.  
Et dans ce programme C, je cree avec l'appel system (system("xterm" );), un nouvel xterm 2, et j'aimerai que mes printf s'affichent sur ce second terminal, et non sur le premier.  
Merci de m'aider.

mood
Publicité
Posté le 10-12-2003 à 17:53:24  profilanswer
 

n°587674
Taz
bisounours-codeur
Posté le 10-12-2003 à 17:59:37  profilanswer
 

man fork, man pipe, man dup, man dup2
cela dit je ne sais pas comment ça fonctionne avec xterm, peut être qu'il te faudra y lancer un programme qui affiche ce qu'il lit dans un fichier, ton appli mère écrivant les informations à la volée de l'autre côté.
soif d'interface graphique ?
pourquoi tu as besoin d'afficher ça dans un autre terminal ?

n°587679
HellodeLu0​07
Posté le 10-12-2003 à 18:01:45  profilanswer
 

Pour faire une redimension du terminal, et afficher des infos en couleurs, sur fond en couleur...Ambiance... ;) Enfin, bon, ch'ais pas si avec des fork etc j'va y arriver.... :(

n°587684
Taz
bisounours-codeur
Posté le 10-12-2003 à 18:03:10  profilanswer
 

pourquoi tu peux pas faire ça dans ton programme initial ? tu utilises ncurses pour la mise en forme, et si la taille du terminal te parait pas correcte, tu affiche un message d'erreur "me faut plus grand" et bye.

n°587696
HellodeLu0​07
Posté le 10-12-2003 à 18:07:49  profilanswer
 

Non, je recherchais plutot une option dans xterm, style xterm -"j'recupere la sortie std", ou un truc dans l'genre... Paske j'voudrais pas trop allourdir mon prog...

n°587702
Taz
bisounours-codeur
Posté le 10-12-2003 à 18:11:58  profilanswer
 

bah en faisaint ça tu l'allourdie ... et puis c'est un peu bête de dévellopper une applciation console qui a besoin de X et de xterm
 
sinon, je sais pas si ce que tu demandes est faisable directement, voirla solution donéne avant


Message édité par Taz le 10-12-2003 à 18:12:29
n°587705
Taz
bisounours-codeur
Posté le 10-12-2003 à 18:15:12  profilanswer
 

dans tous les cas voir les man

n°587708
HellodeLu0​07
Posté le 10-12-2003 à 18:20:16  profilanswer
 

Mouai. J'ai regardé les man, et vraiment... J'ai rien compris :) Tant pis, j'va m'debrouiller... Peut etre que si mon 2nd xterm recupere le focus... Faudra que je cherche comment. Merci de ton aide, en tt cas. Si une idee te vient, n'hesite pas! :)

n°587711
Taz
bisounours-codeur
Posté le 10-12-2003 à 18:23:25  profilanswer
 

bah je te dis, tourne toi vers curses, tu ne seras déçu. n'empeche j'ai toujours pas compris ton besoin d'avoir 2 terminaux ...

n°587713
HellodeLu0​07
Posté le 10-12-2003 à 18:25:56  profilanswer
 

Bah voila. Un terminal qui lance mon execution (normal.) et un qui sert un peu, de..... Telecommande ou il y a des donnnées hyper importante... Et comme ca, mon 1er Xterm est clean,et mon 2nd j'le redimensionne a souhait, j'le mets en couleurs, etc....

mood
Publicité
Posté le 10-12-2003 à 18:25:56  profilanswer
 

n°587714
Taz
bisounours-codeur
Posté le 10-12-2003 à 18:27:26  profilanswer
 

tourne toi vers curses, tu peux splitter l'écran dans le meme terminal. franchement si t'as un peu de temps, ça vaut vraiment le temps

n°587716
HellodeLu0​07
Posté le 10-12-2003 à 18:30:22  profilanswer
 

Tout l'probleme est la.Etudiant, ch'uis en pleine periode d'exam'. Le temps, j'en ai plus trop :D Bon, ch'uis ok, fallait si prendre plus a l'avance, mais bon... C la vie des etudiants, ca!
J'irai voir curses, mais bon. Vu mon niveau, j'y crois pas trop...

n°587719
R3g
fonctionnaire certifié ITIL
Posté le 10-12-2003 à 18:30:45  profilanswer
 

Et que dirais-tu d'un script shell qui lance xterm --lesoptionskivontbien tonprog ?


---------------
Au royaume des sourds, les borgnes sont sourds.
n°587722
Taz
bisounours-codeur
Posté le 10-12-2003 à 18:31:58  profilanswer
 

moi je ferais
 
xterm -e cat pipe_nommé
 
tout ça lancé par un fork & exec, pas de system


Message édité par Taz le 10-12-2003 à 18:32:19
n°587723
HellodeLu0​07
Posté le 10-12-2003 à 18:32:32  profilanswer
 

Mouai, c une bonne idee, ca... J'va essayer. Merci du bon conseil

n°587728
HellodeLu0​07
Posté le 10-12-2003 à 18:36:27  profilanswer
 

Heu... J'ai essayé avec le script, mais en fait, j'ecris tjs vers le premier terminal... Pourtant, j'ai tape:
xterm -geometry 20x10+0+0 -bg black -fg gray90 -name Progr &
./exemple01

n°587732
Taz
bisounours-codeur
Posté le 10-12-2003 à 18:38:16  profilanswer
 

normal, il faut lancer une commande dans le xterm#2 qui lise les données, par pipe nommé, c'est un bonne solution, aou alors avec un simple fichier, que xterm#1 rempli que xterm#2 lit avec tail -f

n°587735
HellodeLu0​07
Posté le 10-12-2003 à 18:42:50  profilanswer
 

Oula, trop compliqué tout ca!!!

n°587737
Taz
bisounours-codeur
Posté le 10-12-2003 à 18:46:50  profilanswer
 

bah c'est la seule solution.
 
écoute, pour toi, on fais simple
 
xterm#1
 - ouvre fichier /tmp/communication (évidemment, prends un nom aléatoire avec les fonctions faites pour)
 - fork + exec :lance xterm#2 -e tail -f /tmp/communication
 - écrire des trucs que doit affichier xterm#2 (du texte, des caracètres d'échapement, etc)
 (- tuer xterm#2)
  - supprimer le fichier temporaire
 
xterm#2
 - rien à faire, il lit et affiche

n°587862
bobbyf
Posté le 10-12-2003 à 21:32:47  profilanswer
 

HellodeLu007 a écrit :

Oula, trop compliqué tout ca!!!


 
He hellodelu007 ,on voit vraiment que t'es pas un gars qui doit faire de l'informatique !!  
pour poser des questions comme ca :no commet  :pt1cable:  !!  
 
il est dommageable pour toi de ne pas avoir suivi les cours de MR VERON qui enseigne a la fac de TOULON et du var !! tu n'aurais plus besoin de poser ce genre de question . et puis enleve ce "007" a la fin de ton pseudo :ca fait penser a james bond 007 alors que t'es loin d'arriver a la cheville de cette personnne pour qui tout est clair .  
 
Voila j'ai dit tout ce que j'avais a dire :si ca peut elargir le sujet  et faire reflechir ainsi qu'aider  mr hellodelu (remarquez que j'ai omis les "007" ) ,j'en serais ravi . :ange:

n°587877
Taz
bisounours-codeur
Posté le 10-12-2003 à 22:09:31  profilanswer
 

bobbyf a écrit :


 
He hellodelu007 ,on voit vraiment que t'es pas un gars qui doit faire de l'informatique !!  
pour poser des questions comme ca :no commet  :pt1cable:  !!  
 
il est dommageable pour toi de ne pas avoir suivi les cours de MR VERON qui enseigne a la fac de TOULON et du var !! tu n'aurais plus besoin de poser ce genre de question . et puis enleve ce "007" a la fin de ton pseudo :ca fait penser a james bond 007 alors que t'es loin d'arriver a la cheville de cette personnne pour qui tout est clair .  
 
Voila j'ai dit tout ce que j'avais a dire :si ca peut elargir le sujet  et faire reflechir ainsi qu'aider  mr hellodelu (remarquez que j'ai omis les "007" ) ,j'en serais ravi . :ange:  

surréaliste  :ouch:

n°587885
bobbyf
Posté le 10-12-2003 à 22:16:09  profilanswer
 

j'aurais prefere avoir l'avis de l'interesse !!!

n°587893
Taz
bisounours-codeur
Posté le 10-12-2003 à 22:18:52  profilanswer
 

bobbyf a écrit :

j'aurais prefere avoir l'avis de l'interesse !!!  

allez sors d'ici, tes messages n'apportent rien et relève du MP

n°587904
bobbyf
Posté le 10-12-2003 à 22:30:02  profilanswer
 

Taz a écrit :

allez sors d'ici, tes messages n'apportent rien et relève du MP


t'es qui TAZ un moderateur ?? ou un qui se prend pour un justicier sans coeur et sans remords ??

n°587906
Taz
bisounours-codeur
Posté le 10-12-2003 à 22:31:48  profilanswer
 

bobbyf a écrit :


t'es qui TAZ un moderateur ?? ou un qui se prend pour un justicier sans coeur et sans remords ??  

je suis ton père :o

n°587916
schnapsman​n
Zaford Beeblefect
Posté le 10-12-2003 à 22:55:44  profilanswer
 

bobbyf a écrit :


 
He hellodelu007 ,on voit vraiment que t'es pas un gars qui doit faire de l'informatique !!  
pour poser des questions comme ca :no commet  :pt1cable:  !!  
 
il est dommageable pour toi de ne pas avoir suivi les cours de MR VERON qui enseigne a la fac de TOULON et du var !! tu n'aurais plus besoin de poser ce genre de question . et puis enleve ce "007" a la fin de ton pseudo :ca fait penser a james bond 007 alors que t'es loin d'arriver a la cheville de cette personnne pour qui tout est clair .  
 
Voila j'ai dit tout ce que j'avais a dire :si ca peut elargir le sujet  et faire reflechir ainsi qu'aider  mr hellodelu (remarquez que j'ai omis les "007" ) ,j'en serais ravi . :ange:  


 
[:rofl]


---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
n°588083
HellodeLu0​07
Posté le 11-12-2003 à 09:20:45  profilanswer
 

No soucy, les gars. Pas d'bagarres sur le forum, siouplé :) Je remercie Taz et les autr' d'mavoir repondu, et ne vous inquiétez pas pour Bobbyf, c un ami de ma fac.  
J'vais essayer aujourd'hui de faire le truc avec fork etc... On verra, j'vous donnerai la reponse (pour servir de reference, pour d'autres personnes.)
Bye!

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Rediriger la sortie standart vers un Xterm

 

Sujets relatifs
édition ou requêtes vers un fichier .db4Rediriger la sortie d'erreur standard vers une JTextArea
Rediriger le message d'erreur dans un fichierCSV vers MySLQ
Adresse avec des liens vers des projets open sourceMettre à jour Phpmyadmin vers une version supérieur
envoi d'un formulaire vers un emailArrondir ni vers le haut ni vers le bas.
Plus de sujets relatifs à : Rediriger la sortie standart vers un Xterm


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR