Bonjour,
Je me permet de poster un message concernant un script que je dois réaliser. Mon script demande comme première question, on doit rentrer un nombre d'un chiffre ou deux. Déja il y'a un problème... Lorsque je met un nombre de 3 chiffres ça me cherche le fichier. Ensuite, je doit récupérer un nombre de 7 chiffres dans un fichier texte. Il me le récupère mais j'ai le texte avant mon nombre...
De plus, j'ai mis en place une option modifier, donc le nombre de 7 chiffre je veux le modifier par le nombre que je rentre
Je vous donne mon code, ça serait sympa de regarder mon code et voir les incohérences que j'ai cité avant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66 #!/usr/bin/perl -w use strict; my $nombre; my @nb; my @na; my $i; print "Which TT want to see? \n"; $nombre = <STDIN>; #saisie au clavier chomp($nombre); if($nombre =~ /\d{1,2}/){ } else{ print "Which TT want to see? \n"; $nombre = <STDIN>; #saisie au clavier chomp($nombre); } open (my $in,"<", "fichier$nombre.txt") || die "Le fichier n'existe pas !\n"; while(my $tablignes =<$in>) { my @mot = split (' ',$tablignes); #on sépare foreach my $nombre(@mot){ if($nombre =~ /\d{7}/){ #reggex utilisé pour les nombres push(@nb,$nombre); } } } print"Le device ID de la TT $nombre est le suivant @nb\n"; print "Which TT want to Modify (1), Verify (2) or exit (3) \n"; $i = <STDIN>; if ($i == 1) {modify();} if ($i == 2) {verify();} if ($i == 3) {exit();} sub modify{ open (my $out,">", "fichier$nombre.txt") || die "Le fichier ne peut être édité !\n"; open (my $var, "information.txt"); my @motus = <$var>; foreach my $line(@motus){ chomp ($line); print " $line \n"; close $var; } print"Le tableau: @na \n"; print "New Device ID? \n"; my $new = <STDIN>; chomp ($new); if($new =~ /\^d{7}/){ } else{ print "Retry, write the new device ID? \n"; $new = <STDIN>; #saisie au clavier chomp($new); } print"Le device ID de la TT $nombre est le suivant @nb\n"; close $out; } sub verify{ open (my $var, "information.txt"); my @motus = <$var>; foreach my $line(@motus){ chomp ($line); print " $line \n"; close $var; } } close $in;
Partager