Bonjour,
J'applique mon script sur cette liste :
Voici mon script sans erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Flag time : 4097 0:00:23 user1 MATLAB/42 4.4% Flag time : 11365 0:00:42 user2 MATLAB/51 3.3% Flag time : 11365 0:01:23 user2 MATLAB/50 1.2% Flag time : 11365 0:02:02 user2 MATLAB/50 3.0% Flag time : 11365 0:10:07 user2 MATLAB/50 7.1% Flag time : 11365 0:16:37 user2 MATLAB/49 7.5% Flag time : 11365 0:22:20 user2 MATLAB/49 7.2% Flag time : 11365 0:24:29 user2 MATLAB/49 6.0% Flag time : 11365 0:28:19 user2 MATLAB/49 1.2% Flag time : 11365 0:29:14 user2 MATLAB/51 1.4% Flag time : 18715 0:00:56 user1 MATLAB/40 3.1%
Je ne comprend pas pourquoi cette version :
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 #!/usr/bin/perl use POSIX; use strict; use warnings; open (F, 'MATLAB_s.log'); my @t = sort <F>; foreach my $line (@t) { print "$line\n"; my @col=split (/\s+/,$line); my $pid=$col[3]; my @time=split (/:/,$col[4]); my $login=$col[5]; print "$time[0] $time[1] $time[2]\n"; my $heures=$time[0]*3600; my $minutes=$time[1]*60; my $sec=$time[2]; $sec= ($heures + $minutes + $sec); print "PID: $pid Temps :$sec Login: $Login\n"; }
me genère ce message d'erreur :
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 #!/usr/bin/perl use POSIX; use strict; use warnings; open (F, 'MATLAB_s.log'); my @t = sort <F>; foreach my $line (@t) { print "$line\n"; my @col=split (/\s+/,$line); my $pid=$col[3]; my @time=split (/:/,$col[4]); my $login=$col[5]; print "$time[0] $time[1] $time[2]\n"; my $sec= ($time[0]*3600 + $time[1]*60 + $time[3]); print "PID: $pid Temps: $sec Login: $login\n"; }
Use of uninitialized value in addition (+) at ./tri_col.pl line 21, <F> line 11.
J'ai essayé d'utiliser dessur plusieurs variable sans succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part next if !defined ;
Merci de votre aide.
Partager