begin process at 2012 05 30 16:07:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

Autre

 > 

Redirection "<" en C


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Redirection "<" en C

lundi 22 février 2010 à 18:43:39 | Redirection "<" en C

beno0ou

Bonjour, j'ai dans un projet besoin de rediriger l'entree standard d'un programme qui sera execute par le contenu d'un fichier.
Nous avous fait enormement de tests sans succes.

Comment, avant ou autour d'un execve, remplir l'entree standard du programme execute par execve avec le contenu d'un fichier??
Je ne demande pas de codes, mais simplement des indices si certains d'entre vous ont des idees.

Merci d'avance! =)
lundi 22 février 2010 à 19:50:18 | Re : Redirection "<" en C

beno0ou

Edit: Resolu!
mardi 23 février 2010 à 13:50:54 | Re : Redirection "<" en C

TychoBrahe

Pas eu le temps de répondre, mais pour ceux que ça intéresse ça se fait avec dup2.

Exemple d'une fonction qui redirige l'entrée standard du processus courant vers le fichier donc le chemin est passé en paramètre :
Code C/C++ :
#include <unistd.h>
#include <fcntl.h>

int     redir(char *filename)
{
  int   fd;

  if (filename == NULL)
    return -1;
  fd = open(filename, O_RDONLY, 0644);
  if (fd == -1)
    return -1;
  return dup2(fd, STDIN_FILENO);
}


Et sa version courte pour les hard-core codeurs :
Code C/C++ :
#include <unistd.h>
#include <fcntl.h>

int     redir(char *filename)
{
  int   fd;
  return (filename == NULL || (fd = open(filename, O_RDONLY, 0644)) == -1) ? -1 : dup2(fd, STDIN_FILENO);
}


Cette discussion est classée dans : programme, execute, redirection, standard, entree


Répondre à ce message

Sujets en rapport avec ce message

Comment faire pour que le programme ne s'execute pas si il vois qui est entrais d'etre executer ? [ par WaFFel ] bien voila mon problem ses que je ne sais pas comement empecher de faire marcher mon programe si il vois qui est dejas entrais de marche sur l'ordi Detourner l'entree standard en C++ [ par LDDT ] Je voudrais que l'entree standard de mon programme soit un fichier et non le clavier. Comment puis je faire? Redirection sortie standard processus [ par bouba ] Bonjour, j'ai un programme qui créer un nouveau thread avec la fonction ShellExecute de l'API Win32 afin de lancer un exécutable. Le thread ainsi lanc comment verifier qu'on a bien un entier en entree? [ par filsdugrand ] bojours,voila je programme une petite calculette en ce moment pour mes etudes et je coince sur un petit probleme: comment verifier que ce qui a ete do Redirection vers le flux standard [ par christophedlr ] Bonsoir,Dans mon projet en C++, j'utilise la librairie SDL pour les thread et socket.Sauf que celui-ci sous windows redirige le flux vers le fichier s redirection temporaire entree standard [ par simonpelloquin ] Bonjour à tous, Je suis sous linux, et fais une petite class sous emacs. Une methode "getData" de cette classe affiche des données à l'ecran (par cou redirection sortie standard dans plugin [ par NonoWeb ] Bonjour j'ai fait la redirection de la sortie standard dans un fichier et dans une zone de texte de mon application.Cela fonctionne tres bien dans mon Ecoute de l'entrée standard du clavier [ par ceeno ] Je souhaite créer un programme en c qui ecoute l'entrée standard du clavier meme si celui-ci n'est plus en premier plan (je suis sous linux debian).Pa POURQUOI le programme n'execute pas tous les cout<< !!!! [ par maxarf ] Slt,Gros problème, dans un programme j'execute mainte et mainte coutPourquoi et [clos] Urgent SVP programme qui ne s'execute pas C++ sur Dev [ par peaceSouna ] bonjour j'ai fais un programme qui manipule fractions rationnelle aprés une classe polynome qui utilise ces fraction comme coefficients mais lorsq


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,218 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales