IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Modifier shell avec les chevrons.


Sujet :

Linux

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2014
    Messages : 208
    Points : 60
    Points
    60
    Par défaut Modifier shell avec les chevrons.
    Cmment on peut modifier le shell sur la création de processus pour permettre la redirections d’entrée-sortie comme dans un shell ordinaire, avec les chevrons.??

    il 'sagit de ce shell

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    int
    main(){
      int t ;
     
      ...
      t = fork() ;
      if (t == -1){              // erreur
         traitement d’erreur
      } else if (fork() == 0){ // enfant
         traitements spécifiques de l’enfant
      } else {                 // parent
         traitement spécifiques du parent
      }
      return 0 ;
    }

  2. #2
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 038
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 038
    Points : 8 406
    Points
    8 406
    Par défaut
    • ton code comporte 2 fork, à mon avis tu es mal parti(e) (un seul devrait suffire en toute logique, ou alors tu ne fournis pas un contexte suffisant pour comprendre à quoi sert le deuxième)
    • quand on lance un processus fils, il hérite notamment des descripteurs du processus père, tu peux ré-affecter les descripteurs avec dup2(), par exemple ouvrir un fichier et réaffecter STDOUT_FILENO sur le descripteur de ton fichier ouvert, ou encore fermer (close/fclose) le descripteur STDERR_FILENO etc. ça c'est pour le principe dans les grandes lignes, pour que tout fonctionne il faudra évidemment faire des tests de ton coté
    • accessoirement plutôt qu'un bosquet de if tu peux probablement jouer du switch/case pour traiter les différentes valeurs de retour

  3. #3
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 605
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 605
    Points : 19 512
    Points
    19 512
    Par défaut
    il faudrait quand même voir à poster dans la bonne rubrique.

    je déplace, encore.

  4. #4
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2014
    Messages : 208
    Points : 60
    Points
    60
    Par défaut
    oui voila c'est dans ce code qu'il faut faire a redirection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    t = fork() ;
            assert(t != -1) ;
            if (t == 0){
              // enfant
              modifier les caractéristiques de l’enfant
              execl(...) ;
              traiter l’erreur lors du exec
            }
            // parent
            ...

Discussions similaires

  1. Bizzarerie en shell avec les codes retour
    Par kyake dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 13/04/2008, 13h20
  2. Utilisation de sed avec les variables dans un Shell
    Par mbole dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 05/07/2007, 18h46
  3. Réponses: 4
    Dernier message: 01/03/2007, 09h14
  4. Modifier la couleur d'un STATIC avec les API windows
    Par Mirsa dans le forum Visual C++
    Réponses: 31
    Dernier message: 27/11/2006, 12h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo