[C++] Inclure du shelle scripting dans C++
Fermé
Hitchy
-
25 avril 2005 à 11:40
mamiemando Messages postés 33544 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 24 février 2025 - 20 juin 2012 à 21:39
mamiemando Messages postés 33544 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 24 février 2025 - 20 juin 2012 à 21:39
A voir également:
- [C++] Inclure du shelle scripting dans C++
- Comment inclure une video dans un powerpoint - Guide
- Inclure une signature dans word - Guide
- Inclure la publication d'origine facebook - Forum Mail
- Inclure la publication d'origine facebook ne fonctionne pas - Forum Facebook
- Efi shell bloque le démarrage du pc - Forum Windows 10
3 réponses
Ok oK....
Bon je me suis lancé dans la traduction de mon code complet en C++.
Par contre, j'ai des commandes Shell que je dois absolument inclure dans le code C++.
Le problème est que certaines commandes contienent des variables.
Exemple : je souhiate inclure cette commande :
ifconfig eth0 inet VARIABLE netmask VARIABLE2
Comment puis je inclure cette commande et lui faire comprendre les variables C++ ?
Bon je me suis lancé dans la traduction de mon code complet en C++.
Par contre, j'ai des commandes Shell que je dois absolument inclure dans le code C++.
Le problème est que certaines commandes contienent des variables.
Exemple : je souhiate inclure cette commande :
ifconfig eth0 inet VARIABLE netmask VARIABLE2
Comment puis je inclure cette commande et lui faire comprendre les variables C++ ?
tafiscobar
Messages postés
1277
Date d'inscription
jeudi 7 décembre 2000
Statut
Contributeur
Dernière intervention
26 février 2009
177
25 avril 2005 à 12:19
25 avril 2005 à 12:19
salut, Shell+CC => du jamais vu.
Tout ce que tu peu faire c'est exécuter des commandes a partir du C/CC, avec les fcts posix adéquates la famille exec (man 3 exec) et les processus. Néanmoins, avec posix tu as accés a certaines variables d'environnement que tu pe modifier ou y accéder.
Tout ce que tu peu faire c'est exécuter des commandes a partir du C/CC, avec les fcts posix adéquates la famille exec (man 3 exec) et les processus. Néanmoins, avec posix tu as accés a certaines variables d'environnement que tu pe modifier ou y accéder.
mamiemando
Messages postés
33544
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
24 février 2025
7 828
Modifié par mamiemando le 20/06/2012 à 21:38
Modifié par mamiemando le 20/06/2012 à 21:38
Au pire tu peux utiliser les fonctions system ou execvp. Mais c'est a éviter car ça veut dire que le programme va dépendre du shell (bash, tcsh...) et même de l'OS (windows, linux..) ce qui est pas très recommandé.
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/system.3.html
http://www.linux-kheops.com/doc/man/manfr/man-ascii-0.9/man3/execvp.3.txt.html
Ceci dit tu peux te débrouiller pour qu'à la compilation tu considères des sections de code "windows" et "linux" avec des #define.
Exemple :
La commande execvp permet quant à elle de passer des arguments :
Exemple :
http://sardes.inrialpes.fr/~mossiere/Telecom/Systeme/minishell/td_shell.pdf
Bonne chance
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/system.3.html
http://www.linux-kheops.com/doc/man/manfr/man-ascii-0.9/man3/execvp.3.txt.html
Ceci dit tu peux te débrouiller pour qu'à la compilation tu considères des sections de code "windows" et "linux" avec des #define.
Exemple :
#include <cstdlib> int main() { #ifdef WINDOWS system("ipconfig"); #endif #ifdef LINUX system("/sbin/ifconfig"); #endif return 0; }
La commande execvp permet quant à elle de passer des arguments :
Exemple :
http://sardes.inrialpes.fr/~mossiere/Telecom/Systeme/minishell/td_shell.pdf
Bonne chance
23 févr. 2007 à 15:57
Ca devrai t'aider.
Les tubes ca aide mais bon pas facile a géré.
20 juin 2012 à 15:22
merci
20 juin 2012 à 16:21
20 juin 2012 à 21:39