use strict; use warnings; $ENV{XX} = 42; $ENV{YY} = 'whatever you wont'; unshift @ARGV,$_ for reverse map {s/\s*#.*$|^\s*#.*$//; (split ' ',$_,2)} split /\n/, <<'EOCONF' --put here your --list of arguments and #any #indented --comment #comments --too EOCONF ; print "@ARGV" unless caller; 1;