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 相关文章推荐
Python异常处理总结
Aug 15 Python
Linux下使用python调用top命令获得CPU利用率
Mar 10 Python
介绍Python中的文档测试模块
Apr 28 Python
详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
Jun 23 Python
Python探索之修改Python搜索路径
Oct 25 Python
python队列通信:rabbitMQ的使用(实例讲解)
Dec 22 Python
Python实现的质因式分解算法示例
May 03 Python
Python图像处理之识别图像中的文字(实例讲解)
May 10 Python
TensorFlow Session使用的两种方法小结
Jul 30 Python
OpenCV搞定腾讯滑块验证码的实现代码
May 18 Python
Python GUI自动化实现绕过验证码登录
Jan 10 Python
Python接口开发实现步骤详解
Apr 26 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
PHP 登录完成后如何跳转上一访问页面
2014/01/14 PHP
初识PHP
2014/09/28 PHP
自己写的php中文截取函数mb_strlen和mb_substr
2015/02/09 PHP
laravel 解决Eloquent ORM的save方法无法插入数据的问题
2019/10/21 PHP
麦鸡的TAB切换功能结合了javascript和css
2007/12/17 Javascript
ajax中get和post的说明及使用与区别
2012/12/23 Javascript
jQuery中:gt选择器用法实例
2014/12/29 Javascript
Jquery效果大全之制作电脑健康体检得分特效附源码下载
2015/11/02 Javascript
基于js实现微信发送好友如何分享到朋友圈、微博
2015/11/30 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
Java  Spring 事务回滚详解
2016/10/17 Javascript
AngularJS实现的JSONP跨域访问数据传输功能详解
2017/07/20 Javascript
Node.JS更改Windows注册表Regedit的方法小结
2017/08/18 Javascript
javascript深拷贝、浅拷贝和循环引用深入理解
2018/05/27 Javascript
layui中使用jquery控制radio选中事件的示例代码
2018/08/15 jQuery
es6中Promise 对象基本功能与用法实例分析
2020/02/23 Javascript
使用Vue-cli 中为单独页面设置背景图片铺满全屏
2020/07/17 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
2020/09/21 Javascript
[48:00]完美世界DOTA2联赛循环赛 Forest vs Inki BO2第二场 11.04
2020/11/04 DOTA
利用Tkinter和matplotlib两种方式画饼状图的实例
2017/11/06 Python
python中字符串的操作方法大全
2018/06/03 Python
Python3离线安装Requests模块问题
2019/10/13 Python
Python函数的默认参数设计示例详解
2019/12/01 Python
np.dot()函数的用法详解
2020/01/17 Python
Python自动采集微信联系人的实现示例
2020/02/28 Python
对django 2.x版本中models.ForeignKey()外键说明介绍
2020/03/30 Python
如何利用python正则表达式匹配版本信息
2020/12/09 Python
Halston Heritage官网:简洁的日装,稍显奢华的晚装
2018/11/20 全球购物
橄榄树药房:OLIVEDA
2019/09/01 全球购物
SNIDEL官网:日本VIVI杂志人气少女第一品牌
2020/03/12 全球购物
《胡杨》教学反思
2014/02/16 职场文书
学生自我评语大全
2014/04/18 职场文书
党的群众路线教育实践活动学习笔记范文
2014/11/06 职场文书
党员心得体会范文2016
2016/01/23 职场文书
python爬取网页版QQ空间,生成各类图表
2021/06/02 Python
36个正则表达式(开发效率提高80%)
2021/11/17 Javascript