# C++ commande linux

**URL:** <https://www.debian-fr.org/t/c-commande-linux/55015>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 1:28 UTC](https://www.debian-fr.org/t/c-commande-linux/55015 "2016-02-21T13:28:14Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![kripteks](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/71c47a/32.png) [@kripteks](https://www.debian-fr.org/u/kripteks)\
**Post date:** [Février 21, 2016, 1:28 UTC](https://www.debian-fr.org/t/c-commande-linux/55015/1 "2016-02-21T13:28:14Z")

</div>

Salut a tous.  
J’aimerais exécuter des commandes de linux (et parfois récupérer la sortie comme avec pour awk) dans mes script c++.

Savez-vous comment on fait d’une bonne manière ?

Pour info: je suis un débutant sous c++ (ou plutôt dire que j’ai pas eu le besoin pour m’avancer loin, donc je suis dans le niveau de base).

Merci d’avance.

---

<div class="post-metadata">

**Author:** ![DjKlaus](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/d/ee59a6/32.png) [@DjKlaus](https://www.debian-fr.org/u/DjKlaus)\
**Post date:** [Février 21, 2016, 1:28 UTC](https://www.debian-fr.org/t/c-commande-linux/55015/2 "2016-02-21T13:28:15Z")

</div>

Voici quelques solutions, à toi de choisir.

Tu peux appeler ta commande par system

[code]NAME  
system - execute a shell command

SYNOPSIS  
#include \<stdlib.h\>

```
   int system(const char *command);[/code]

```

Ou bien popen

[code]NAME  
popen, pclose - pipe stream to or from a process

SYNOPSIS  
#include \<stdio.h\>

```
   FILE *popen(const char *command, const char *type);

   int pclose(FILE *stream);

```

Feature Test Macro Requirements for glibc (see feature\_test\_macros(7)):

```
   popen(), pclose():
       _POSIX_C_SOURCE >= 2 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE

```

[/code]  
Ou encore faire du spawning. Voici un lien avec glib [developer.gnome.org/glib/2.32/gl … esses.html](http://developer.gnome.org/glib/2.32/glib-Spawning-Processes.html)
