Here is a short script that demonstates the basics of file handling. When you run this script it reads itself in, writes a copy to a file the the same name and a .clone extension and then opens this new file and appends a message to it.
# $0 contains the name of the running script (ie this one)
# $! contains error messages, if any
# open file for reading
open ME, "<$0" or die "Can't open myself, Perl says $!\n";
my @essence = <ME>;
close ME;
# open file for writing (clobber existing, create if required)
# name will be whatever this script called with .clone extension
open MY, ">$0.clone" or die "Failed to clone myself $!\n";
print MY @essence;
close MY;
# open file for appending (add to end of file)
open CLONE, ">>$0.clone" or die "Clone has disappeared $!\n";
print CLONE "\n\nI am just a clone of the program $0\n";
print CLONE "Just Another Perl Hacker\n", scalar localtime;
close CLONE;
cheers
tachyon
s&&rsenoyhcatreve&&&s&n.+t&"$'$`$\"$\&"&ee&&y&srve&&d&&print
|