IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

[C : system()] Problème sous Linux RH3


Sujet :

C

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 28
    Points : 16
    Points
    16
    Par défaut [C : system()] Problème sous Linux RH3
    Bonjour à tous,

    Voici mon souci.

    J'ai un p'tit programme en C qui est censé via Samba copier un fichier sur le PC. J'ai donc écrit ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    system("cd /folder");
    system("smbclient //mon_pc/dossier -U domaine\\login%password -c 'get BASE.MDB'");
    Et donc... aucune trace de mon fichier.

    Pourtant, quand je copie-colle cette ligne dans mon terminal, elle marche bien... Quel est donc le souci selon vous ?

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Points : 17 916
    Points
    17 916
    Billets dans le blog
    2
    Par défaut
    parce que 2 appels systènes sont 2 process différents. Donc ton "cd" est inconnu au moment de faire le deuxième..

    Il faut le faire en une seule fois .

    "cd ... ; smb..."
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    Ben... ça marche pas plus

    De toute façon, même quand je le laisse s'executer sans le "cd", il ne me le copie nul part... A croire qu'il n'aime pas "smbclient" dans la fonction system().

    Après peut-être que le problème vient de mon programme... mais ça m'étonnerait

    EDIT :

    Hi hi, j'suis un peu blonde Mais en tout cas, ça marche, merci beaucoup

    J'avais oublié de mettre les doubles '\' pour qu'il comprenne... Donc il y avait deux soucis, dont un corrigé grâce à toi, merci

    Donc la solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    system("cd /folder;smbclient //mon_pc/dossier -U domaine\\\\login%password -c 'get BASE.MDB'");

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. va_list problème sous linux, pas sous windows
    Par gigiskhan dans le forum C
    Réponses: 11
    Dernier message: 02/10/2012, 17h51
  2. Developpement systeme AVOD sous linux
    Par neddaf.s dans le forum ALM
    Réponses: 0
    Dernier message: 18/06/2010, 11h44
  3. [Eclipse 3.2] Problème sous linux
    Par anonyme13 dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 22/09/2009, 13h17
  4. Système embarqué sous linux
    Par chikenfrag dans le forum Applications et environnements graphiques
    Réponses: 12
    Dernier message: 16/07/2006, 00h14
  5. bizarrerie avec l'appel system read sous linux.
    Par Hypnocrate dans le forum C
    Réponses: 20
    Dernier message: 20/11/2005, 02h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo