CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C] Découper le résultat d'une commande system

shineypichu
shineypichu
Niveau 10
18 juin 2017 à 11:56:41

Bonjour

J'apprend le C en ce moment, et j'en suis aux sockets plus précisément. Je cherche à faire un début de serveur/client.

J'ai déjà un client et un serveur sur lequel je peux me connecter et j'ai juste fait une commande "help" qui renvoie aux clients une liste de commandes que je compte créer.

Seulement j'ai un soucis sur comment renvoyer le résultat d'une commande comme "dir" ( un ls sous UNIX). Quand mon client envoie "ls" j'ai bien le dir qui se fait côté serveur mais j'ai aucune idée de comment envoyer ça au client. Enfin si j'en ai une mais je ne sais pas comment mettre ça en place.

Je pensais faire parcourir à mon programme les résultats du dir ( premier soucis), le faire s'arrêter à chaque \n qu'il croise ( second soucis ) et envoyer ainsi ligne par ligne au client.

Auriez vous de la doc ? Un exemple ? Quoi que ce soit qui puisse m'aider car je suis un peu perdu dans ce langage qui même si il est intéressant reste vachement plus riche/poussé que tout ce que j'ai fait jusqu'à présent :(

Merci

shineypichu
shineypichu
Niveau 10
18 juin 2017 à 12:09:04

Ou alors je stock le résultat du dir dans un txt que je lis et décompose :(

Candystand
Candystand
Niveau 10
18 juin 2017 à 15:02:51

Tu peux utiliser la fonction popen, puis lire le résultat grâce à un fread et envoyer ce résultat à ton client

shineypichu
shineypichu
Niveau 10
18 juin 2017 à 15:16:13

J'ai réussi entre temps merci quand même :oui:

J'ai stocké le résultat du dir dans un txt, j'ai lu ligne par ligne et à chaque ligne que je lisais je l'ajouter à la précédente et à la fin j'envoie dans le buffer

godrik
godrik
Niveau 30
19 juin 2017 à 03:34:06

popen eat mieux en l'occurence. Ca evite les race conditions, en cas ou le programme tourne deux fois.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment