Code
perl
use strict;
use warnings;
# Write
open(my $fh, '>', 'output.txt') or die "Cannot open: $!";
print $fh "Line 1\n";
print $fh "Line 2\n";
close($fh);
# Read line by line
open(my $in, '<', 'input.txt') or die "Cannot open: $!";
while (my $line = <$in>) {
chomp $line; # remove newline
print "Read: $line\n";
}
close($in);
# Slurp entire file
open(my $slurp, '<', 'data.txt') or die $!;
my $content = do { local $/; <$slurp> };
close($slurp);
# Append
open(my $log, '>>', 'app.log') or die $!;
print $log "[" . localtime() . "] event\n";
close($log);
# Read all lines into array
open(my $arr, '<', 'data.txt') or die $!;
my @lines = <$arr>;
close($arr);
# In-place edit (perl -i -pe 's/old/new/g' file.txt)
{
local $^I = '.bak'; # backup extension
local @ARGV = ('data.txt');
while (<>) {
s/old/new/g;
print;
}
}