novice en programmation doit programmer sous unix. - Divers - Programmation
Marsh Posté le 24-03-2006 à 20:11:18
> ce que j'ai a faire, c'est ca: creer un graphique de type XY (abcisse-ordonnee) a partir de donnees d'un fichier texte et afficher ce graphique dans netscape
Que tu ait à faire ça derrière un serveur web, ou dans un dossier de l utilisateur, le PHP devrai être facile à apprendre: facile pour commencer, bonne doc, installation facile, beaucoup de fonctionnalités. Prévoit tout de même une semaine pour apprendre les bases si tu n a aucune expérience en programmation.
Marsh Posté le 24-03-2006 à 20:21:34
tu peux également chercher un soft libre et/ou gratuit qui te permettent de tracer des graphs facilement (GNU Plot par exemple)
Une fois ton image générer tu n'as plus qu'à l'intégrer dans une page html
Marsh Posté le 24-03-2006 à 20:36:55
Hello,
N'importe quel langage actuel va te permettre de créer ce type de graphique, après, ça dépend plus de tes contraintes : web ou local, taille des fichiers, fréquence de maj, performances, portabilité,....
Sur un unix, perl http://www.perl.com/ + gd http://www.boutell.com/gd/ parait pas trop mal...
Marsh Posté le 27-03-2006 à 10:05:30
ok merci pour vos réponses, c'est cool !
Par contre, vous auriez pas un petit exemple tout con ? Je m'explique :
Concretement, quand je suis sous unix, qu'est ce que je dois faire pour lancer un programme (perl ou php) ? Je l'écris dans un fichier texte ou un fichier executable ? Quelle extension je dois donner à ce fichier dans ce cas? Et comment je l'execute ? Vous auriez pas un exemple tout con, genre juste l'affichage d'un message ou la somme 2+2=4 pour que je puisse voir comment procéder pour executer un tel programme ?
Merci. Miguel
Marsh Posté le 27-03-2006 à 10:38:41
Personnelement je te conseille PERL ( entre perl et php), c'est bien "mieux" pour apprendre à programmer correctement. PHP est beaucoup trop permissif pour démarrer avec.
Deux exemple donc
somme.pl ( en supposant une installe "normale" de perl)
Code :
|
somme.php:
Code :
|
Nan nan ça se ressemble pas
edit: s'quoi t'interpreteur de code qui fume la moquette???
Marsh Posté le 27-03-2006 à 10:47:40
+1 pour Perl
Je me souviens que pour un projet où il me fallait sortir des chiffres sur les perfs de l'appli, j'avais utilisé Perl+GnuPlot
En gros, avec Perl je "parsais" les chiffres, les convertissais dans des tableaux Perl, et j'injectais le tout dans un module de GnuPlot (http://search.cpan.org/~caidaperl/ [...] Gnuplot.pm)
Marsh Posté le 27-03-2006 à 10:48:06
ouais, j'ai un petit probleme:
J'ai collé dans un fichier texte le premier script:
#!/usr/bin/perl
use strict;
my $somme = 2 + 2;
print '2 + 2 = '.$somme;
Ensuite je l'ai enregistré sous somme.pl
Maintenant, comment je l'execute depuis unix S'il te plait ?
(execute somme.pl ou exe somme.pl ne fonctionne pas, il me sort "command not found" )
Miguel
Marsh Posté le 27-03-2006 à 10:50:52
deux manières :
Code :
|
Code :
|
La seconde manière est mieux, car tu ajoutes le droit d'exécution sur le fichier et tu utilises la ligne de shebang pour l'exécution (1ère ligne : #!/usr/bin/perl)
Marsh Posté le 27-03-2006 à 11:15:18
ca marche pas
voici ce que ca donne :
TRNG_MUNC::essais_reponses_forums> l
total 1
-rwxrwxrwx 1 mwesteel play 76 Mar 27 10:44 somme.pl
TRNG_MUNC::essais_reponses_forums> somme.pl
somme.pl - Command not found
TRNG_MUNC::essais_reponses_forums> .somme.pl
.somme.pl - Command not found
TRNG_MUNC::essais_reponses_forums> perl somme.pl
Illegal character 15 (carriage return) at somme.pl line 2.
(Maybe you didn't strip carriage returns after a network transfer?)
TRNG_MUNC::essais_reponses_forums> chmod +x somme.pl#
Cannot access somme.pl#: No such file or directory
TRNG_MUNC::essais_reponses_forums> chmod +x somme.pl
TRNG_MUNC::essais_reponses_forums> ./somme.pl
./somme.pl - Command not found
TRNG_MUNC::essais_reponses_forums> ./ somme.pl
./ - Permission denied
Miguel.
Marsh Posté le 27-03-2006 à 11:24:27
va falloir que t'y mettes un peu du tien aussi sinon on va jamais s'en sortir!!!
La 1ere commande correcte était:
Code :
|
A quoi le systeme te réponds:
Citation : Illegal character 15 (carriage return) at somme.pl line 2. |
Laissant sous-entendre que tu as fait un copier/coller sans vraiment regarder ce que tu faisais ( je parie que tu as laissé les # qui viennent du copier de ce forum).
La 2eme ligne correcte était:
Code :
|
Avec un joli # à la fin normal qui trouve pas le fichier!!!
Donc quand tu as fait:
Code :
|
tu as bien mis les droits.
Marsh Posté le 27-03-2006 à 11:40:34
ah d'accord, excuse moi, je savais pas que les # venaient du copier-coller. Je vais apprendre le language perl, mais avant j'aimerais m'assurer que ca tourne bien sous unix c'Est pour ca que j'arrive pas encore À detecter ce genre d'erreurs.... désolé !
Donc j'ai rééssayé et ca tourne. Mais voici ce que ca donne, c'Est normal ? :
TRNG_MUNC::essais_reponses_forums> ./somme.pl
./somme.pl: !/usr/bin/perl: not found
./somme.pl[2]: use: not found
./somme.pl[3]: =: not found
2 + 2 = .
(voici ce que contient somme.pl en l'ouvrant avec wordpad:
!/usr/bin/perl
use strict;
$somme = 2 + 2;
print '2 + 2 = '.$somme;
Marsh Posté le 27-03-2006 à 11:44:53
Oui mais alors il faut le # sur la 1ere ligne
Code :
|
Marsh Posté le 27-03-2006 à 11:57:45
Bon voilà, en rajoutant le # au début, ca donne ca:
TRNG_MUNC::essais_reponses_forums> ./somme.pl
./somme.pl - Command not found
À ce moment là, j'ai ouvert le fichier somme.pl sous unix avec nedit et j'ai découvert des <CR> À la fin de chque ligne.
Donc je les ai supprimés. Et là, ca donne:
TRNG_MUNC::essais_reponses_forums> ./somme.pl
Global symbol "somme" requires explicit package name at ./somme.pl line 3.
Execution of ./somme.pl aborted due to compilation errors.
MAis bon, je voudrais pas te prendre la tête non plus....
Marsh Posté le 27-03-2006 à 12:00:53
ben nan, il y est , je t'assure, regarde:
#!/usr/bin/perl
use strict;
$somme = 2 + 2;
print '2 + 2 = '.$somme;
Marsh Posté le 27-03-2006 à 12:04:38
t'as oublié le my sur la déclaration de somme:
Code :
|
Oui je sais je l'ai oublié aussi juste au dessus, mais pas sur le 1er code que j'ai donnée
Marsh Posté le 27-03-2006 à 12:09:10
Ca MAAARRCHEEE !!!!
Alors un grand merci !!!!!!
MAintenant, je vais me lancer dans l'apprentissage du language.
Tu sais ou je pourrais trouver de bons tutoriaux par hasard ?
Marsh Posté le 27-03-2006 à 14:30:45
voilà, je me suis lancé. Voici mon premier programme, qui compte le nb de lignes d'un fichier texte, mais il y a un probleme.
#!/usr/bin/perl
open (fichier, '3lignes.txt');
$i=0
while(<fichier> ) {
$i++;
}
close fichier;
print "nombre de lignes: $i";
Unix me detecte une erreur à la ligne 6, À côté de }
"aborted due to compilation errors"
je vois pas d'ou ca peut venir ... ?????
Miguel
Marsh Posté le 27-03-2006 à 14:41:03
je ne connais pas Perl, mais est-ce que tu ne devrais pas avoir un ';' après $i=0 ?
Marsh Posté le 27-04-2006 à 12:59:59
bonjour tout le monde de perl ben jai lu votre discution et jespere ke moi aussi vous allez m'aider, je debute en programation perl sous unix
et voila un message ki me sort
(Can't open perl script "test.pl": Un fichier ou un répertoire du chemin d'accès n'existe pas.)
je ne sais pas si vous plait aider moi jenn ai vraiment besoin je suis entrain de praparer mon projet de fin d'etude!!!!!!!!!!!
Marsh Posté le 27-05-2006 à 18:05:43
dis nous quelle est la commande que tu as lancée pour obtenir ce message d'erreur
Marsh Posté le 27-05-2006 à 18:48:08
un mois après, si il n'a pas trouvé, son projet de fin d'études doit être mal barré
Marsh Posté le 27-05-2006 à 20:06:28
ah ouais j'ai cru que c'était un post qui datait d'aujourd'hui
Marsh Posté le 24-03-2006 à 17:48:54
Bonjour,
J'aimerais un renseignement s'il vous plait:
Il faut que j'ecrive un petit script (ou programme) sous unix et je
n'ai encore jamais fait ca..
ce que j'ai a faire, c'est ca: creer un graphique de type XY (abcisse-ordonnee) a partir de donnees d'un fichier texte et afficher ce graphique dans netscape (netscape navigator version 4.78).
Et tout ca dans une procedure automatique.
Donc a mon avis, je dois decomposer mon script de la facon suivante:
1- lire les donnees contenues dans le fichier texte
2- selectionner celles qui m'interessent
3- creer un graphique a partir de ces donnees
5- exporter le graphique en fichier image
6- importer l'image dans une page html
7- commander l'ouverture de cette page html
Si quelqu'un pouvait me mettre sur la voie, me dire quel language je dois utiliser,
merci d'avance !!
PS: voici un exemple de fichier texte dans lequel sont contenues mes donnees:
POINT ID. TYPE T1 T2 T3 R1 R2 R3
1 G 1.599571E+01 1.185148E-02 -3.111541E+00 1.784951E-06 5.286219E-02 -3.340712E-06
2 G 2.303846E+00 1.238950E-02 -1.913684E+00 1.784951E-06 5.286219E-02 -3.340712E-06
1000 G 1.009300E-03 -1.461770E-03 -8.895236E-02 -1.380486E-02 1.121588E-03 0.0
1001 G 6.655139E-04 -1.269913E-03 -1.202470E-02 -8.149052E-03 1.912397E-03 0.0
1002 G 2.128328E-04 -4.430452E-04 2.143617E-02 9.356764E-04 -1.131274E-03 0.0
1003 G 1.528846E-04 -3.164306E-04 1.279018E-02 1.256070E-03 -7.879398E-04 0.0
1004 G 4.770843E-04 -1.147985E-03 2.830649E-02 -3.521185E-03 -6.181516E-04 0.0
1005 G 2.695279E-04 -3.397622E-04 -1.185465E-02 -1.379297E-04 -1.666789E-03 0.0
1006 G 5.318802E-03 -1.288805E-02 1.703259E-01 3.963486E-02 2.937418E-02 0.0
1007 G 3.142439E-03 -5.341556E-03 5.803642E-02 1.815232E-02 1.094855E-02 0.0
1008 G 1.822350E-04 3.866597E-04 1.790608E-02 -1.606418E-03 -7.047455E-04 0.0
Et donc, par exemple, j'aimerai faire le graphique suivant contenant 3 points:
les points 1002, 1005 et 1006
leur abcisses respectives se trouvent dans la colonne T1, leurs ordonnees dans la colonne T3.
Et afficher ce graphique (avec legende, titre etc...) dans netscape..
merci.