2012-03-27 15 views
8

Estoy usando Data::Dumper para imprimir un hash de perl con configuración, que será evaluado por otro script. El problema es que siempre imprime $VAR = al comienzo de la salida. Probé la configuración del parámetro Varname para vaciar la cadena, pero luego recibo $1 en lugar de $VAR. ¿Cómo evito imprimir el nombre de la variable usando Dumper?Cómo evitar la impresión del nombre de la variable con `Data :: Dumper`

my $params = {-PARAMS => 0} #data 

local $Data::Dumper::Purity = 1; 
local $Data::Dumper::Varname = ""; 
print Dumper($params) ; 

Lienzo:

$1 = { 
    '-UPDATE' => 0, 
} 

quiero tener:

{ 
    '-UPDATE' => 0, 
} 

Respuesta

14

Basta con establecer $Data::Dumper::Terse = 1; y debería funcionar:

$ perl -MData::Dumper -wle '$Data::Dumper::Terse = 1; print Dumper {-PARAMS => 1}' 
{ 
    '-PARAMS' => 1 
} 
+0

Eso hizo el truco - ¡gracias! –

6

O utilice la sintaxis OO:

print Data::Dumper->new([ {-PARAMS => 1 } ])->Terse(1)->Dump; 
Cuestiones relacionadas