Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 31/12/2007, à 15:05

koflesinge

Commande unix en C ??

Dans un but d'entrainement, et pour pouvoir mieux l'adapter  à  mes besoins,  je souhaite convertir ce programme :

http://doc.ubuntu-fr.org/dossier_magique

en langage C.

J'ai déjà  quelques notions, mais  j'ai un problème de base et  je n'ai pas trouvé la solution :

Comment inclure des commandes unix dans un programme en C ???

Avec un fichier .h , avec une syntaxe particulière ...... ?

Hors ligne

#2 Le 31/12/2007, à 15:25

olivier.d75

Re : Commande unix en C ??

il faut utiliser la fonction system( "nom_de_commande")

Hors ligne

#3 Le 31/12/2007, à 15:33

koflesinge

Re : Commande unix en C ??

Merci pour ta réponse rapide.

Ca à l'air d'etre la réponse à ce q ue  je cherchais.:D

Hors ligne

#4 Le 31/12/2007, à 15:37

Sysko le prospecteur

Re : Commande unix en C ??

il y  a aussi la fonction    FILE*  popen  (  char*  ma_commannde , char* mode_ouverture )

qui permet en plus de stocker le texte que retourne une commande  ,  ainsi  selon les commandes   ,cela permet  de tester si la commande à  correctemment fonctionner  ,  d'afficher   dans une  fenetre gtk  le resultat etc...


Projet tatoeba : projet collaboratif visant à créer un corpus de phrases d'exemples traduites dans le plus de langues possibles

Hors ligne

#5 Le 31/12/2007, à 15:58

koflesinge

Re : Commande unix en C ??

Ben la , l'idée c'est de réussir à  faire une boucle  qui permet de passer chaque  ficchier en revue un à  un.

La  commande system m'aurait permis de replacer les

mv $source $destination

dans des commandes en c. Voici , grosso modo, la base de mon programme :

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

char extension[4];


int choix (extension)
{
}

void filetype (fichier)
{
}

int main ()
{


return 0;
}

L'idée est de  passer l'extension du fichier en paramètre de la fonction choix, qui redirige ensuite vers les fonctions de types.
On peut ensuite imaginer (c'est le but initial de mon programme) des fonctions de type assez développée , en analysant le nom du  fichier  pour le situer dans un  répertoire.

ex: Si le fichier est un fichier video et  le nom contient heroes alors déplacer dans le dossier heroes

Hors ligne

#6 Le 31/12/2007, à 18:06

obiwankennedy

Re : Commande unix en C ??

Tu peux utiliser la fonction exec() (et sa famille) dans le processus fils après un fork. C'est un bonne chose niveau apprentissage.


Dans mes logiciels, j'écris ton nom.
SGNGD: SvgGd is Not GD
Rolisteam

Hors ligne

#7 Le 31/12/2007, à 19:18

herrib"ubuntu"

Re : Commande unix en C ??

Consulte aussi le man 3 . Certaines fonctions sont directement implémentées (http://www.linux-france.org/article/man-fr/man3/Index-3.html )