[Perl] et [GNUPLOT]: Problème d'execution

Bonjour,

Je vous expose mon problème.
Je travaille sous UNIX.

J'ai deux fichiers, un fichier perl (XYPLOT.pl) et un fichier gnu (test_gnuplot3.gnu)
Ils sont dans le même repertoire:

TRNG_MUNC::scripts> l
total 334
-rw-rw-rw- 1 mwesteel play 167430 Mar 24 16:01 Touareg.f06
-rwxrwxrwx 1 mwesteel play 932 Mar 30 15:18 XYPLOT.pl
-rw-rw-rw- 1 mwesteel play 73 Mar 30 15:18 bash.txt
-rw-rw-rw- 1 mwesteel play 157 Apr 3 10:48 scriptshellunix.txt
-rw-r--r-- 1 mwesteel TRNG_MUNC 136 Apr 3 10:47 shellunix.txt
-rw-r--r-- 1 mwesteel TRNG_MUNC 43 Apr 3 10:16 test_gnuplot3.gnu
TRNG_MUNC::scripts> pwd
/Munch2/TRNG_MUNCH/MWESTEEL/Grafik_html_aus_f06_Datei/scripts

Par contre, les programmes gnuplot et perl sont installés ailleurs:
/usr/freeware/bin
C'est à dire qu'il faut que je les appelle depuis ce nouveau repertoire pour les faire fonctionner.

Or j'aimerais faire un bash script qui execute mes deux fichiers automatiquement.
Mais il ne fonctionne pas, le voici:

#!/bin/sh
cd /usr/freeware/bin
./perl5.6.1-n32
chmod +x XYPLOT.pl
./Munch2/TRNG_MUNCH/MWESTEEL/Grafik_html_aus_f06_Datei/GNUPLOT_Test/XYPLOT.pl
cd /usr/freeware/bin
./gnuplot /Munch2/TRNG_MUNCH/MWESTEEL/Grafik_html_aus_f06_Datei/GNUPLOT_Test/test_gnuplot3.gnu


Mais bien sûr, ca ne marche pas...
qqn peux t'il m'aider svp ?
Merci.
Miguel

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    Salut,

    pour le script perl il faut remplacer la ligne avec le shibang (#!)
    En fait la 1ère ligne indique le chemin vers l'interpreteur Perl

    #! /usr/bin/perl

    en

    #! /usr/freeware/bin/perl

    Il faut peut être ajouter dans PATH le chemin /usr/freeware/bin

    export PATH=$PATH:/usr/freeware/bin

    ou ajouter cette ligne dans .bashrc (si tu utilise bash comme shell)

    Enfin j'espère que j'ai bien compris ton souci.

    Que te donne les commandes

    whereis perl

    whereis gnuplot

    ?

    lami20j
    1. salut Lami,

      voilà pour les whereis:

      TRNG_MUNC::scripts> whereis perl
      perl: /usr/bin/perl /usr/sbin/perl /usr/sbin/perl5.00404 /usr/freeware/bin/perl /usr/share/catman/u_man/cat1/perl.z /usr/freeware/catman/p_man/cat3/perl /usr/freeware/catman/u_man/cat1/perl

      TRNG_MUNC::scripts> whereis gnuplot
      gnuplot: /usr/freeware/bin/gnuplot /usr/freeware/lib/gnuplot /usr/freeware/catman/u_man/cat1/gnuplot.Z

      Tu as effectivement bien compris ma question, ca marche pour appeler le programme perl ainsi que gnuplot

      C'est à dire que j'ai remplacé

      #! /usr/bin/perl

      en

      #! /usr/freeware/bin/perl
      dans mon script perl

      Et donc, mon bash est le suivant:

      #!/bin/sh

      chmod +x XYPLOT.pl
      ./XYPLOT.pl
      nedit T1T2.txt
      export PATH=$PATH:/usr/freeware/bin
      gnuplot /Munch2/TRNG_MUNCH/MWESTEEL/Grafik_html_aus_f06_Datei/scripts/test_gnuplot3.gnu
      export PATH=$PATH:/Munch2/TRNG_MUNCH/MWESTEEL/Grafik_html_aus_f06_Datei/scripts
      netscape dessin.ps

      Donc merci, ca marche !
      Bonne journée (jusqu'à la prochaine question :) )
      Miguel
      1. salut Lami,

        voilà pour les whereis:

        TRNG_MUNC::scripts> whereis perl
        perl: /usr/bin/perl /usr/sbin/perl /usr/sbin/perl5.00404 /usr/freeware/bin/perl /usr/share/catman/u_man/cat1/perl.z /usr/freeware/catman/p_man/cat3/perl /usr/freeware/catman/u_man/cat1/perl

        TRNG_MUNC::scripts> whereis gnuplot
        gnuplot: /usr/freeware/bin/gnuplot /usr/freeware/lib/gnuplot /usr/freeware/catman/u_man/cat1/gnuplot.Z

        Tu as effectivement bien compris ma question, ca marche pour appeler le programme perl ainsi que gnuplot

        C'est à dire que j'ai remplacé

        #! /usr/bin/perl

        en

        #! /usr/freeware/bin/perl
        dans mon script perl

        Et donc, mon bash est le suivant:

        #!/bin/sh

        chmod +x XYPLOT.pl
        ./XYPLOT.pl
        nedit T1T2.txt
        export PATH=$PATH:/usr/freeware/bin
        gnuplot /Munch2/TRNG_MUNCH/MWESTEEL/Grafik_html_aus_f06_Datei/scripts/test_gnuplot3.gnu
        export PATH=$PATH:/Munch2/TRNG_MUNCH/MWESTEEL/Grafik_html_aus_f06_Datei/scripts
        netscape dessin.ps

        Donc merci, ca marche !
        Bonne journée (jusqu'à la prochaine question :) )
        Miguel