Je besoin de faire une programme en perl
salman
-
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Bonjour, je besoin d' ecrire un programme en perl sous linux qui compte les mots se trouvant dans un fichier dont le nom est passé en argument au programme.
sincerement merci.
sincerement merci.
A voir également:
- Je besoin de faire une programme en perl
- Programme demarrage windows - Guide
- Mettre en veille un programme - Guide
- Message programmé iphone - Guide
- Programme word gratuit - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
17 réponses
Salut, tu as des bases en perl? Car nous on veut bien te donner des pistes, mais on va pas te faire un code tout beau tout propre! ;-)
nom je viens de debut perl et j'avais des retards par rapport au autres etudiant ,donc je voulai vraiment que vous m'aidiez merci;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Donc. Ton programme comportera déjà:
Je précise qu'après le # ce sont des commentaires, tu n'es pas obligé de les mettre dans ton programme.
#! /usr/bin/perlEn première ligne. C'est l'interpréteur, pour éviter de toujours taper "perl monfichier.pl". Ensuite, l'extension sera ".pl". POur finir, tu auras sans doute quelque chose de ce genre pour commencer:
#! /usr/bin/perl chomp(my $mot=<STDIN>) ; #pour lire le mot donné en argument.
Je précise qu'après le # ce sont des commentaires, tu n'es pas obligé de les mettre dans ton programme.
il m'affiche cette erreur quand j tape chomp(my $mot=<STDIN>) ; et que je touche rentrer s'il vous plait pouvez vous m'aider
bash: syntax error near unexpected token `my'
bash: syntax error near unexpected token `my'
Salut,
En première ligne. C'est l'interpréteur, pour éviter de toujours taper "perl monfichier.pl".
Il faut s'assurer qu'il y a les droit d'exécutions sur le fichier sinon, malgré le shebang on sera obliger de faire perl monfichier.pl
chomp(my $mot=<STDIN>) ; #pour lire le mot donné en argument.
Ben, non.
STDIN lit depuis l'entrée standard
Les arguments du script on les trouves dans @ARGV
En première ligne. C'est l'interpréteur, pour éviter de toujours taper "perl monfichier.pl".
Il faut s'assurer qu'il y a les droit d'exécutions sur le fichier sinon, malgré le shebang on sera obliger de faire perl monfichier.pl
chomp(my $mot=<STDIN>) ; #pour lire le mot donné en argument.
Ben, non.
STDIN lit depuis l'entrée standard
my $mot; chomp($mot = <STDIN>);
Les arguments du script on les trouves dans @ARGV
je creer creer un fichier dans mon bureau et je faite une programme qui peut ouvrir se fichier la voila
#! /usr/bin/perl
open (LEC , "<"test.txt");
whyle ($ ligne =<LEC>)
print $_;
}
j'ai enregistrer sous mot.pl sur mon bureau
comment pourai-je l'execute et voir si il marche ou pas je travail sous linux et je tape mon code sur l'editeur de texte.pouvez vous m'aide d'execute et de me corriger si il ya des erreur.
et je voulai compter les mots qui se trouve dans se fichier
#! /usr/bin/perl
open (LEC , "<"test.txt");
whyle ($ ligne =<LEC>)
print $_;
}
j'ai enregistrer sous mot.pl sur mon bureau
comment pourai-je l'execute et voir si il marche ou pas je travail sous linux et je tape mon code sur l'editeur de texte.pouvez vous m'aide d'execute et de me corriger si il ya des erreur.
et je voulai compter les mots qui se trouve dans se fichier
Il faut que tu fasses: chmod +x monfichier.pl puis après, que tu te place dans le dossier et que tu tapes ./monfichier.pl pour le lancer ;-)
enfai moi je enregistrer mon code mot.pl
et si je fai chmod +x mo.pl
il m'affiche sa
chmod: ne peut accéder `mot.pl': Aucun fichier ou répertoire de ce type
et si je fai chmod +x mo.pl
il m'affiche sa
chmod: ne peut accéder `mot.pl': Aucun fichier ou répertoire de ce type
Re,
Tu as des erreurs dans ton script (j'ai ajouté une gestion d'erreur au cas où)
Il n'y a pas d'espace entre $ et ligne
Si tu utilise la variable $ligne tu dois faire print $ligne pas print $_
106485010510997108
Tu as des erreurs dans ton script (j'ai ajouté une gestion d'erreur au cas où)
Il n'y a pas d'espace entre $ et ligne
Si tu utilise la variable $ligne tu dois faire print $ligne pas print $_
#! /usr/bin/perl open LEC , "<test.txt" or die "E/S : $!\n"; while ($ligne =<LEC>) print $ligne; }--
106485010510997108
Re,
Pour compter les mots il faut savoir la structure de ton fichier.
Quel caractère veux tu utiliser pour séparer les mots?
Pour compter les mots il faut savoir la structure de ton fichier.
Quel caractère veux tu utiliser pour séparer les mots?
Re,
Ca ne marche pas comme ça ;-)
Essaie (je n'ai pas testé)
Pour exécuter : perl script.pl fichier
Ca ne marche pas comme ça ;-)
Essaie (je n'ai pas testé)
#! /usr/bin/perl use strict;use warnings; open LEC , "<test.txt" or die "E/S : $!\n"; my $compteur; while (my $ligne =<LEC>) { my @mots; next if /^$/; @mots=split /\s+/, $ligne; $compteur += scalar @mots ; } print "Le fichier a $compteur mot(s)\n"; __END__
Pour exécuter : perl script.pl fichier
j arrive pa a excecute le programme svp.j ai enregistrer un dossier dans mon bureau mai iln m'affiche une ereur comme ce si bash: chomp: command not found
#! /usr/bin/perl
use strict;use warnings;
open LEC , "<test.txt" or die "E/S : $!\n";
my $compteur;
while (my $ligne =<LEC>) {
my @mots;
next if /^$/;
@mots=split /\s+/, $ligne;
$compteur += scalar @mots ;
}
print "Le fichier a $compteur mot(s)\n";
__END__
#! /usr/bin/perl
use strict;use warnings;
open LEC , "<test.txt" or die "E/S : $!\n";
my $compteur;
while (my $ligne =<LEC>) {
my @mots;
next if /^$/;
@mots=split /\s+/, $ligne;
$compteur += scalar @mots ;
}
print "Le fichier a $compteur mot(s)\n";
__END__