in reply to To repeat each word in a line

G'day kulua,

Welcome to the Monastery.

"I am new to perl."

As a first step, please read "perlintro: Perl introduction for beginners". It's not particularly long and will provide you with a basic understanding of the language. It's also peppered with links to more detailed information and advanced topics: use those as the need arises.

Next, bookmark the "Perl Online Documentation". Initially, I'd suggest just familiarising yourself with the basic sections: it's a reference work; there's no expectation that you should read it in its entirety.

"I search in the internet for perl code . ... What should be the modified code."

Well, I don't know what search criteria you used, but you've posted what looks like some variety of Bourne shell code.

Here's some fully-functional Perl code that achieves your stated objectives using the input data you provided:

#!/usr/bin/env perl use strict; use warnings; use autodie; my $in_file = 'pm_11132903_input.txt'; my $out_file = 'pm_11132903_output.txt'; my $format = ".%s(%s),\n"; { open my $in_fh, '<', $in_file; open my $out_fh, '>', $out_file; while (<$in_fh>) { if (/^(rist_top_\w+)/) { printf $out_fh $format, ($1) x 2; } else { print $out_fh $_; } } } # Just for testing and demonstration print "*** INPUT: $in_file ***\n"; system cat => $in_file; print "*** OUTPUT: $out_file ***\n"; system cat => $out_file;

Output:

*** INPUT: pm_11132903_input.txt *** module abc( rist_top_tck, rist_top_tdi, rist_top_tdo, *** OUTPUT: pm_11132903_output.txt *** module abc( .rist_top_tck(rist_top_tck), .rist_top_tdi(rist_top_tdi), .rist_top_tdo(rist_top_tdo),

— Ken