Eu usaria perl
:
perl -ne '
BEGIN{
local $/ = undef;
$template = <STDIN>; # slurp file B in
}
chomp;
print $template =~ s/\bvalue1\b/$_/gr' fileA < fileB
Se a sua versão de perl
for muito antiga para suportar o sinalizador r
substitute, você poderá usar uma variável temporária:
perl -ne '
BEGIN{
local $/ = undef;
$template = <STDIN>; # slurp file B in
}
chomp;
($out = $template) =~ s/\bvalue1\b/$_/g;
print $out' fileA < fileB