python判断windows隐藏文件的方法


Posted in Python onMarch 21, 2014

1. 通过windows attrib 命令获取文件隐藏属性

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

python判断windows隐藏文件的方法

2. 隐藏属性值及其含义 
Constants - the following attribute values are returned by the GetFileAttributes function:

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_NORMAL = 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 通过 win32api 获取文件隐藏属性
python 官网对 win32API 的简单说明 https://www.python.org/download/windows/
下载地址 http://sourceforge.net/projects/pywin32/
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)

运行结果:

python判断windows隐藏文件的方法

4. 与运算(&)更直观判断隐藏文件
示例代码如下,& 运算的结果与隐藏属性值相对应,可以更直观的判断文件类型。

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)

运行结果:

python判断windows隐藏文件的方法

 

Python 相关文章推荐
探索Python3.4中新引入的asyncio模块
Apr 08 Python
详解Python中的Descriptor描述符类
Jun 14 Python
Python 模拟员工信息数据库操作的实例
Oct 23 Python
Python自定义一个类实现字典dict功能的方法
Jan 19 Python
Python + OpenCV 实现LBP特征提取的示例代码
Jul 11 Python
python Tcp协议发送和接收信息的例子
Jul 22 Python
Python 多线程搜索txt文件的内容,并写入搜到的内容(Lock)方法
Aug 23 Python
python网络编程 使用UDP、TCP协议收发信息详解
Aug 29 Python
多版本python的pip 升级后, pip2 pip3 与python版本失配解决方法
Sep 11 Python
python多环境切换及pyenv使用过程详解
Sep 27 Python
python语言中有算法吗
Jun 16 Python
python工具快速为音视频自动生成字幕(使用说明)
Jan 27 Python
python解析中国天气网的天气数据
Mar 21 #Python
python实现文件名批量替换和内容替换
Mar 20 #Python
Python读写Redis数据库操作示例
Mar 18 #Python
python实现k均值算法示例(k均值聚类算法)
Mar 16 #Python
python实现保存网页到本地示例
Mar 16 #Python
利用打码兔和超人打码自封装的打码类分享
Mar 16 #Python
Python使用代理抓取网站图片(多线程)
Mar 14 #Python
You might like
linux使用crontab实现PHP执行计划定时任务
2014/05/10 PHP
php json转换成数组形式代码分享
2014/11/10 PHP
[全兼容哦]--实用、简洁、炫酷的页面转入效果loing
2007/05/07 Javascript
JavaScript 继承机制的实现(待续)
2010/05/18 Javascript
jquery中.add()的使用分析
2013/04/26 Javascript
JavaScript中的关键字"VAR"使用详解 分享
2013/07/31 Javascript
javascript实现漂亮的拖动层,窗口拖拽特效
2015/04/24 Javascript
基于JavaScript代码实现pc与手机之间的跳转
2015/12/23 Javascript
HTML5+jQuery插件Quicksand实现超酷的星际争霸2兵种分类展示效果(附demo源码下载)
2016/05/25 Javascript
浅谈JS使用[ ]来访问对象属性
2016/09/21 Javascript
vue2.0数据双向绑定与表单bootstrap+vue组件
2017/02/27 Javascript
JS设计模式之策略模式概念与用法分析
2018/02/05 Javascript
react 父子组件之间通讯props
2018/09/08 Javascript
jQuery实现上下滚动公告栏详细代码
2018/11/21 jQuery
vue项目中使用vue-i18n报错的解决方法
2019/01/13 Javascript
小程序rich-text组件如何改变内部img图片样式的方法
2019/05/22 Javascript
layui 地区三级联动 form select 渲染的实例
2019/09/27 Javascript
vue 中的 render 函数作用详解
2020/02/28 Javascript
[04:28]DOTA2亚洲邀请赛小组赛第五日 TOP10精彩集锦
2015/02/03 DOTA
[03:42]2018完美盛典-《加冕》
2018/12/16 DOTA
[43:49]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
Python获取指定字符前面的所有字符方法
2018/05/02 Python
Django分组聚合查询实例分享
2020/04/29 Python
基于Python中random.sample()的替代方案
2020/05/23 Python
python + selenium 刷B站播放量的实例代码
2020/06/12 Python
Python unittest生成测试报告过程解析
2020/09/08 Python
python 基于selenium实现鼠标拖拽功能
2020/12/24 Python
基于MUI框架使用HTML5实现的二维码扫描功能
2018/03/01 HTML / CSS
使用canvas来完成线性渐变和径向渐变的功能的方法示例
2019/07/25 HTML / CSS
英文请假条
2014/04/11 职场文书
公司投资建议书
2014/05/16 职场文书
建党伟业电影观后感
2015/06/01 职场文书
有关朝花夕拾的读书笔记
2015/06/29 职场文书
初中英语教师个人工作总结2015
2015/07/21 职场文书
JavaScript实现淘宝商品图切换效果
2021/04/29 Javascript
mysql聚集索引、辅助索引、覆盖索引、联合索引的使用
2022/02/12 MySQL