begin process at 2012 05 29 09:56:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

Shell

 > 

Interpreteur de commande


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

Interpreteur de commande

lundi 26 septembre 2011 à 19:04:38 | Interpreteur de commande

andoid

Salut!

J'ai un projet où je dois créer un mini interpréteur de commandes genre bash si quelqu'un peut bien m'aider.
Mon idée c'est de lire les fichier.sh d'analyser les lignes et pour chaque commande detecter lui associés un processus qui va l'executer
lundi 26 septembre 2011 à 19:07:22 | Re : Interpreteur de commande

LA_Tupac

Membre Club
Tout le monde veut t'aider mais pas faire le boulot ...
Lance-toi en prenant soin de schématiser sur papier le fonctionnement global et commence à coder. Si tu tombes sur un os, reviens nous poser tes questions
Courage.
lundi 26 septembre 2011 à 19:29:45 | Re : Interpreteur de commande

andoid

Oui je sais que vous allez pas faire le boulot à ma place bon j'aurai bien aimée savoir par où dois je commencer tkt si je tombe sur un os je vous le ferai savoir
merci
lundi 26 septembre 2011 à 19:59:39 | Re : Interpreteur de commande

LA_Tupac

Membre Club
Commence par une boucle qui récupère la commande:
Code C/C++ :
char commande[256];
while((strcmp(commande, "exit")!=0) && !fichierbash.eof())
{
    fichierbash.readline(commande, 256);
    // et hop !! le code qui manque ...
}

Tu me dois 20¤ pour ce code mais comme tu es nouveau client c'est gratuit pour cette fois
lundi 26 septembre 2011 à 20:01:15 | Re : Interpreteur de commande

LA_Tupac

Membre Club
ouai ok! readline , n’existe pas.
c'est plus:
Code C/C++ :
fichierbash.getline(commande, 256);

allez ! au boulot !
lundi 26 septembre 2011 à 20:34:29 | Re : Interpreteur de commande

CptPingu

Administrateur CodeS-SourceS
Maintenant que ce point est éclaircit, il te faut:
- Réaliser un lexer
- Réaliser un parser
- Évaluer l'arbre généré par le parser

Que l'entrée soit un fichier ou une ligne de commande, ça ne change strictement rien. Fais ton lexer/parser en prenant en entrée un "const char*". La manière dont tu as été chercher le texte est laissé à la discrétion de l'utilisateur final.

Pour réaliser ceci, je te conseil de faire les choses suivantes dans cet ordre:
- Regarde ce qu'est un lexer, un parser, un AST (arbre de syntaxe abstrait)
- Fais le lexer. Vérifie que celui-ci gère bien tout ce qui est à géré (échappement, quote, double quote, variable, etc...)
- Fais le parser. Test le bien et n'hésite pas à afficher l'AST généré pour voir si tu as correctement parser ton texte.
- Évalue l'arbre généré par le parser. Il suffit de vérifier que le résultat est celui attendu.

Que dois-tu gérer dans ton projet ?

________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
mardi 27 septembre 2011 à 10:31:15 | Re : Interpreteur de commande

buno

Administrateur CodeS-SourceS
Hello,
Une autre solution serait d'utiliser ce qui existe déjà: sh, bat, ant,...


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
mardi 27 septembre 2011 à 10:34:03 | Re : Interpreteur de commande

CptPingu

Administrateur CodeS-SourceS
@buno: Même si tu as parfaitement raison, je pense que c'est un projet scolaire, et qu'on lui demande de recoder un produit existant pour qu'il en comprenne le fonctionnement.

________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
mardi 27 septembre 2011 à 10:41:45 | Re : Interpreteur de commande

andoid

Au faite le but du projet est de creer
un gestionnaire de tâche de fond
gestion des variables simples et variables d'environnement
gestion du repertoire courant et des changements de repertoires

et la prise en compte d'un separateur de commande
mardi 27 septembre 2011 à 10:42:58 | Re : Interpreteur de commande

andoid

Merci les gars au moins je commence a avoir une idée claire


Cette discussion est classée dans : commande, interpreteur


Répondre à ce message

Sujets en rapport avec ce message

Interpreteur de commande AT [ par Le mauvais ] Bonjour tout le monde :)Alors voilà, je voudrais savoir où je pourrais trouver le code source (en langage C de préférence) d'un interpréteur de comman BCC 5.5.1 compilateur C++ en ligne de commande [ par coopertel ] Bonjour,J'ai téléchargé depuis le site de Borland, le compilateur C++ (C aussi ??) 5.5.1 en ligne de commande (sans interface graphique).Je saisis mon Commande d'un mobile nokia à partir d'un PC [ par hsnstr ] Bonjour,Je voudrais obtenir les codes, en c++ ou en asm ou en java, d'un programme permettant de piloter un mobile nokia 3310 ou 5210 (envoie sms et a Supprimer des mots dans une phrases ... [ par oshin ] Salut,J'aimerais arriver a faire en sorte que lorsque mon bot recoie une commande, il enléve certain mot ex:!cmd nickserv identify passwordhé bien là Exécuter une commande DOS avec arguments [ par nbouard ] Bonjour,Je développe actuellement une application sous Visual C++, et j'aimerais lancer une commande MS-DOS de ce type :"C:\pv.exe -perf -localhost -w ls -l en C [ par ouaichvonvon ] Bonjour a tous!! J'ai programmé la commande linux ls en C et maintenant je dois modofié mon premier programme pour faire la commande ls -l. Je sai PB avec system [ par enrageur ] Je programme sous Visual C++ 6. Le programme fait une sauvegarde de donnees que je compresse avec arj. Pour cela j'utilise la commande system. Quand j aide sur erreur de syntaxe [ par skadomers ] salut à tous.voila je suis en train de créer un programme , permettant de faire des fiches de commande par client. Dans un premier temps ont rempli le recuperer le resultat de rcmd [ par osta ] Bonjour, je suis debutant sur C et j'aimerais executer une commande Unix se trouvant dans une autre machine et recuperer le resultat dans une variable Commande Systeme [ par joh ] Voila mon probleme ,j'utilise ShellExecute() (ds un prog en C++ sous Visual6) pour appeler OutLook et le remplire sa marche sauf que je n arrive pas a


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

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 : 1,154 sec (4)

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