Bonjour
j'ai écrit un script (avec votre aide ) et quand je l'exécute, j'ai un message d'erreur que je n'arrive pas à corriger. Voici le script:
Lors de l'exécution, le message est le suivant:
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 #!C:/perl/bin/perl -w use strict; use List::Util qw(min); my $date=localtime; open ( STDOUT, ">delete_logsdb2_pl.log" ) or die "Impossible d'ouvrir delete_logsdb2_pl.log : $!\n"; print "\n************ $date: DEBUT DU SCRIPT $0 ************\n\n"; my $query_full = "D:/sqllib/bin/db2adutl query full db $ARGV[0]"; print "$query_full\n"; system ("$query_full") or die "\n************ $date: FIN ANORMALE DE LA COMMANDE $query_full : $!\n\n"; open ( OUT, "<delete_logsdb2_pl.log" ) or die "\n************ $date: FIN ANORMALE DU SCRIPT $0: $!\n\n"; my $contenu = do {local $/; <OUT> }; close ( OUT ); my @matches = $contenu =~ m/S(\d{7})\.LOG/g; my $log_util = min (@matches) - 1; my $result = sprintf "S%07i.LOG\n", $log_util; my $delete_logs = "D:/sqllib/bin/db2adutl delete logs db $ARGV[0] between S0000000.LOG and ".$result." without prompting"; print "$delete_logs\n"; system ("$delete_logs") or die "\n************ $date: FIN ANORMALE DE LA COMMANDE $delete_logs : $!\n\n"; print "\n************ $date: FIN NORMALE DU SCRIPT $0 ************\n\n";
Voyez-vous une explication à ce problème ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 C:\bat>delete_logsdb2.pl DBRD5PMD ************ Thu Sep 6 09:34:59 2007: FIN ANORMALE DE LA COMMANDE D:/sqllib/bin/db2adutl query full db DBRD5PMD : Bad file descriptor
Merci d'avance.
Cordialement,
Bruno
Partager