What is the difference between these two code snippets?
open (MYFILE, '>>data.txt');
open (MYFILE, '>data.txt');
What is the difference between these two code snippets?
open (MYFILE, '>>data.txt');
open (MYFILE, '>data.txt');
open (MYFILE, '>>data.txt')
— Open data.txt
, keep the original data, append data from the end.open (MYFILE, '>data.txt')
— Open data.txt
, delete everything inside, and write data from the start.From perldoc -f open
:
If MODE is
'<'
or nothing, the file is opened for input. If MODE is'>'
, the file is truncated and opened for output, being created if necessary. If MODE is'>>'
, the file is opened for appending, again being created if necessary.
It stems from the shell usage that,
cmd < file.txt
to copy file into stdin,cmd > file.txt
to write stdout into a file, andcmd >> file.txt
to append stdout to the end of the file.