Partage
  • Partager sur Facebook
  • Partager sur Twitter

flux de redirection

    18 mai 2015 à 11:45:26

    Bonjour,

    J'ai un programme en C a faire tourner en ligne de commandes. Le résultat produit un fichier (qui porte toujours le meme nom). j'essaie d'utiliser le flux de redirection pour avoir le resultat dans differents fichiers (sinon le précédent est écrasé) vu que le programme est lancé plusieurs fois avec divers paramètres.Je peux bien sur renommer mon fichier de sortie mais il faut que je sois présente (et que je surveille) et je voudrais bien faire autre chose pendant que les programmes tournent.

    Ex : ./program param1 param2 test.txt  > result1.txt

    Mais la commande "cat result1.txt" me relance le programme dans le terminal (ce qui est normal vu que le résultat est produit automatiquement dans un fichier). Quelqu'un a une idée de ce que je peux faire?

    Je précise que je ne sais pas programmer en C.

    Merci

    -
    Edité par Dayoka 18 mai 2015 à 11:54:12

    • Partager sur Facebook
    • Partager sur Twitter
      18 mai 2015 à 12:10:05

      salut,

      je récapitule :
      tu exécutes plusieurs fois un programme, chaque fois avec des paramètres différents, et la sortie chaque exécution doit être redirigée dans un fichier différent.
      c'est ça ?

      comment exécutes-tu plusieurs fois le même programme avec des paramètres différents ?
      à chaque exécution change simplement le nom du fichier de sortie !

      • Partager sur Facebook
      • Partager sur Twitter

      Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

        18 mai 2015 à 12:54:33

        oui c'est ça.

        des paramètres différents parce qu'il s'agit de valeurs numériques (int) que le programme prends en compte pour tourner. Il est codé en C, et produit automatiquement un résultat dans un fichier. je voudrais que le fichier de sortie soit automatiquement renommé.

        • Partager sur Facebook
        • Partager sur Twitter
          18 mai 2015 à 13:22:59

          Bonjour,

          Je sais pas si le traitement de ton programme est long mais tu pourrais essayer de faire une double boucle en parallélisant l'exécution.

          for i in 1 2 3 4 5 6; do for j in 7 8 9 10 11; do program $i $j test.txt > res_"$i"_"$j".txt & done ; done


          Ainsi tu obtiendras le fichier res_1_7.txt qui aura reçu pour paramètre 1 et 7, le fichier res_1_8.txt qui aura reçu pour paramètre 1 et 8 etc ...

          • Partager sur Facebook
          • Partager sur Twitter

          flux de redirection

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown