1. Use the windows attrib command to obtain the file hiding attribute
Copy codeThe Code is as follows: Syntax
ATTRIB [+ attribute |-attribute] [pathname] [/S [/D]
Key
+: Turn an attribute ON
-: Clear an attribute OFF
Pathname: Drive and/or filename e.g. C: \ *. txt
/S: Search the pathname including all subfolders.
/D: Process folders as well
Attributes:
R Read-only (1)
H Hidden (2)
A Archive (32)
S System (4)
Extended attributes:
E Encrypted
C Compressed (128: read-only)
I Not content-indexed
L Symbolic link/Junction (64: read-only)
N Normal (0: cannot be used for file selection)
O Offline
P Sparse file
T Temporary
2. Hide the property value and its meaning
Constants-the following attribute values are returned by the GetFileAttributes function:
Copy codeThe Code is as follows:
FILE_ATTRIBUTE_READONLY = 1 (0x1)
FILE_ATTRIBUTE_HIDDEN = 2 (0x2)
FILE_ATTRIBUTE_SYSTEM = 4 (0x4)
FILE_ATTRIBUTE_DIRECTORY = 16 (0x10)
FILE_ATTRIBUTE_ARCHIVE = 32 (0x20)
File_attribute_normally = 128 (0x80)
FILE_ATTRIBUTE_TEMPORARY = 256 (0x100)
FILE_ATTRIBUTE_SPARSE_FILE = 512 (0x200)
FILE_ATTRIBUTE_REPARSE_POINT = 1024 (0x400)
FILE_ATTRIBUTE_COMPRESSED = 2048 (0x800)
FILE_ATTRIBUTE_OFFLINE = 4096 (0x1000)
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 8192 (0x2000)
FILE_ATTRIBUTE_ENCRYPTED = 16384 (0x4000)
For example, a file attribute of 0x120 indicates the Temporary + Archive attributes are set (0x100 + 0x20 = 0x120 .)
3. python uses win32api to obtain the file hiding attribute
Python official website for win32API simple description https://www.python.org/download/windows/
Http://sourceforge.net/projects/pywin32/
Copy codeThe Code is as follows: import win32file
·
Filenames = [r 'd: \ test ',
R 'd: \ test \ $ RECYCLE. BIN ',
R 'd: \ test \. file_test.py.swp ',
R 'd: \ test \ file_test.py ']
For filename in filenames:
Print '% 4d, % s' % (win32file. GetFileAttributesW (filename), filename)
Running result:
4. more intuitive judgment of hidden files with operations (&)
The sample code is as follows. The calculation result corresponds to the hidden property value, allowing you to more intuitively determine the file type.
Copy codeThe Code is as follows: import win32file
Import win32con
Filenames = [r 'd: \ test ',
R 'd: \ test \ $ RECYCLE. BIN ',
R 'd: \ test \. file_test.py.swp ',
R 'd: \ test \ file_test.py ']
For filename in filenames:
File_flag = win32file. GetFileAttributesW (filename)
Is_hiden = file_flag & win32con. FILE_ATTRIBUTE_HIDDEN
Is_system = file_flag & win32con. FILE_ATTRIBUTE_SYSTEM
Print '% 4d, % s, % s, % s' % (file_flag, is_hiden, is_system, filename)
Running result: