Partage
  • Partager sur Facebook
  • Partager sur Twitter

Mini shell en C

    7 octobre 2019 à 19:00:52

    Bonjour, je dois réaliser une SHELL en C, voici le genre de commande que l'utilisateur doit pouvoir saisir :

    setenv | grep LD |  wc -c

    pwd ; cd projet ; ls

    emacs &

    ls fic.txt && wc -l fic.txt

    wc < monshell.c > resultat

    On a vu en cours comment faire une commande avec 2 pipes mais pour le reste je galere, comment vous feriez vous ?

    quelle est la méthodologie a prendre ?

    merci

    • Partager sur Facebook
    • Partager sur Twitter
      10 octobre 2019 à 23:09:40

      Ton scipt doit te permettre de faire quoi ?

      • Partager sur Facebook
      • Partager sur Twitter
        11 octobre 2019 à 11:11:13

        Salut,

        Pour les |, <, <<, >, >> c'est que de la redirection donc si t'arrive à faire 2 pipes essaye d'en faire illimité et t'aura juste à remplacer stdin et stdout par un fd qui pointe sur un fichier.

        Pour les ; tu sépare au début ta ligne de commande à chaque ; et tu exécute la ligne comme plusieurs.

        Pour les && || le principe c'est de regarder le retour du processus donc dans ton waitpid à l'aide d'un masque il me semble que tu peux avoir la valeur retour. T'as juste à regarder si c'est 0 (succès) ou autre chose (échec) et tu exécute ou non la commande qui suit.

        Pour les processus en arrière plan je sais pas mais tu peux essayer de pas attendre la fin du processus avant de rendre la main à l'utilisateur.

        • Partager sur Facebook
        • Partager sur Twitter

        Mini shell en C

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown