ioutil.WriteFile
takes a perm
argument - if the file to write doesn't already exist, it is created with permissions perm
:
func WriteFile(filename string, data []byte, perm os.FileMode) error
In the general case, is there a recommended value to pass for the perm
argument?
More specifically, I am writing a file which is a transformation of an existing file. Is it recommended to read the permissions of the input file (using os.Stat
) and use the same permissions for the output file?
In the general case, is there a recommended value to pass for the
perm
argument?
0666
. This is the value used by Go's os.Create
, and is also the value of MODE_RW_UGO
, used when a file is created by tools such as touch
.
More specifically, I am writing a file which is a transformation of an existing file. Is it recommended to read the permissions of the input file (using
os.Stat
) and use the same permissions for the output file?
Other than pure cp
, tools don't seem to do this. As above, tools that create new files generally just use 0666
.