bonjour,
j'essaie d'utiliser le module XML:Simple ci dessous le script
mon fichier xml
cat /oracle/oraInventory/ContentsXML/inventory.xml
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" standalone="yes" ?>
<!-- Copyright (c) 2001 Oracle Corporation. All rights Reserved -->
<!-- Do not modify the contents of this file by hand. -->
<INVENTORY>
<VERSION_INFO>
   <SAVED_WITH>2.2.0.18.0</SAVED_WITH>
   <MINIMUM_VER>2.1.0.6.0</MINIMUM_VER>
</VERSION_INFO>
<HOME_LIST>
<HOME NAME="OUIHome" LOC="/oracle/product/ora920" TYPE="O" IDX="1"/>
</HOME_LIST>
</INVENTORY>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
my $oraxml = "/oracle/oraInventory/ContentsXML/inventory.xml";
my $xml = new XML::Simple;
my $in = $xml->XMLin($oraxml);
my @oraxml = ();
foreach my $oraxml (@{$in->{HOME_LIST}->{HOME}}){
      @version = split(/\//, $oraxml->{LOC});
      print $version[3];
}
avec un print dumper ca donne ca

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$VAR1 = {
          'HOME_LIST' => {
                           'HOME' => {
                                       'NAME' => 'OUIHome',
                                       'IDX' => '1',
                                       'LOC' => '/oracle/product/ora920',
                                       'TYPE' => 'O'
                                     }
                         },
          'VERSION_INFO' => {
                              'MINIMUM_VER' => '2.1.0.6.0',
                              'SAVED_WITH' => '2.2.0.18.0'
                            }
        };
mon problème c'est que quand j’exécute le script j'ai le message suivant :

runWithTimeout(): unexpected error: Not an ARRAY reference