Thank a lot brothers....i will try all the things and update you..

-Frank

On Thu, Jan 28, 2016 at 11:27 PM, Jonathan Harris via beginners <
beginners@perl.org> wrote:

> Hi,
> I found that this works, assuming that the module is installed.
>
> #!/usr/bin/perl
> use warnings;
> use strict;
> use File::Slurp qw ( :edit );
> #
> my $file_to_edit = 'path-to-file.txt';
> #
> my $word_to_edit = "Debug";
> my $new_word = "Error";
> #
> edit_file { s/$word_to_edit/$new_word/g } ( $file_to_edit );
> #
>
> This will work if you have the word Debug, Debug_ etc etc
> You can just use s/Debug/Error/g but I like the variables as it allows
> flexibility if the script was to expand to further uses
>
> Hope that helps,
> Jon
>
>
> On Thu, Jan 28, 2016 at 3:41 PM, Jim Gibson <j...@gibson.org> wrote:
>
>>
>> > On Jan 28, 2016, at 1:37 AM, Frank Larry <frankylarry2...@gmail.com>
>> wrote:
>> >
>> > Hi Team,
>> >
>> >  could you please let me? i have a file which contains "Debug", i would
>> like to replace debug to "Error", when i ran the below program the out
>> showing Error message but how to save the output with new changes. Could
>> you please tell me how to fix it?
>>
>> The way to do this within a larger Perl program is to open a new output
>> file, copy all of the possibly-modified lines to this file. Then you can
>> rename the new file to the same name as the old file, and perhaps rename
>> the old file as well and keep it around as a backup.
>>
>> >
>> > open(FILE, "<filter.txt") or die "Can’t open $!\n”;
>>
>> The three-argument version of open is preferred here, and let’s put the
>> file name in a variable and use a lexical variable for the file handle
>> (untested):
>>
>> my $filename = ‘filter.txt’;
>> open( my $in, ‘<‘, $filename ) or die(“Can’t open $filename for reading:
>> $!”);
>>
>> # create a new file
>> my $newfile = $filename . ‘.new’;
>> open( my $out, ‘>’, $newfile ) or die(“Can’t create $newfile: $!”);
>>
>> >
>> > while($line = <FILE>){
>>
>> while( $line = <$in> ) {
>>
>> >
>> >    print "Before substituting: ", $line ,"\n";
>> >     $line =~ s/Debug/Error/g;
>> >     print "After substituting : ", $line , "\n”;
>>
>>         print $out $line;
>> >
>> > }
>> >
>> > close(FILE);
>>
>> close($in);
>> close($out) or die(“Error writing to output file $newfile: $!”);
>>
>> # rename the old file
>> my $savefile = $filename . ‘.sav’;
>> rename $filename, $savefile;
>>
>> # rename the new file
>> rename $newfile, $filename;
>>
>> Jim Gibson
>> j...@gibson.org
>>
>>
>>
>>
>> --
>> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
>> For additional commands, e-mail: beginners-h...@perl.org
>> http://learn.perl.org/
>>
>>
>>
>

Reply via email to