use strict; use warnings; use Data::Dumper; use Config::General; my $c = Config::General->new( -ConfigFile => \*DATA, -InterPolateVars => 1, ); print Dumper {$c->getall()}; __DATA__ V1=/home/user V2=$V1/test V3=$V2/file.txt