Python os.lchflags() Method
The method lchflags() sets the flags of path to the numeric flags. This method does not follow symbolic links unlike chflags() method.
Here flags may take a combination (bitwise OR) of the following values (as defined in the stat module):
UF_NODUMP: Do not dump the file.
UF_IMMUTABLE: The file may not be changed.
UF_APPEND: The file may only be appended to.
UF_NOUNLINK: The file may not be renamed or deleted.
UF_OPAQUE: The directory is opaque when viewed through a union stack.
SF_ARCHIVED: The file may be archived.
SF_IMMUTABLE: The file may not be changed.
SF_APPEND: The file may only be appended to.
SF_NOUNLINK: The file may not be renamed or deleted.
SF_SNAPSHOT: The file is a snapshot file.
Note: This method has been introduced in Python 2.6
Following is the syntax for lchflags() method
path -- This is the file path for which flags to be set.
flags -- This could be a combination (bitwise OR) of the above defined flags values.
This method does not return any value.
The following example shows the usage of lchflags() method.
#!/usr/bin/python import os, sys # Open a file path = "/var/www/html/foo.txt" fd = os.open( path, os.O_RDWR|os.O_CREAT ) # Close opened file os.close( fd ) # Now change the file flag. ret = os.lchflags(path, os.UF_IMMUTABLE ) print "Changed file flag successfully!!"
Let us compile and run the above program, this will produce the following result:
Changed file flag successfully!!