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正则表达式re模块详细介绍
May 29 Python
收集的几个Python小技巧分享
Nov 22 Python
Python脚本实现DNSPod DNS动态解析域名
Feb 14 Python
详细介绍Python中的偏函数
Apr 27 Python
python pyheatmap包绘制热力图
Nov 09 Python
python利用requests库模拟post请求时json的使用教程
Dec 07 Python
详解python-图像处理(映射变换)
Mar 22 Python
Python OpenCV 调用摄像头并截图保存功能的实现代码
Jul 02 Python
python selenium循环登陆网站的实现
Nov 04 Python
python 抓取知乎指定回答下视频的方法
Jul 09 Python
Python绘图之柱形图绘制详解
Jul 28 Python
python办公自动化之excel的操作
May 23 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桌面中心(一) 创建数据库
2007/03/11 PHP
JS中encodeURIComponent函数用php解码的代码
2012/03/01 PHP
php cli配置文件问题分析
2015/10/15 PHP
PHP中的多种加密技术及代码示例解析
2016/10/20 PHP
PHP用continue跳过本次循环中剩余代码的注意点
2017/06/27 PHP
CMSPRESS 10行代码搞定 PHP无限级分类2
2018/03/30 PHP
PHP超全局变量实现原理及代码解析
2020/09/01 PHP
图片之间的切换
2006/06/26 Javascript
收集的网上用的ajax之chat.js文件
2007/04/08 Javascript
JavaScript 应用技巧集合[推荐]
2009/08/30 Javascript
JavaScript将当前时间转换成UTC标准时间的方法
2015/04/06 Javascript
jQuery动态修改字体大小的方法【测试可用】
2016/09/09 Javascript
轻松实现js选项卡切换效果
2016/09/24 Javascript
老生常谈的跨域处理
2017/01/11 Javascript
关于webpack2和模块打包的新手指南(小结)
2017/08/07 Javascript
Angular浏览器插件Batarang介绍及使用
2018/02/07 Javascript
学习JS中的DOM节点以及操作
2018/04/30 Javascript
elementUI Vue 单个按钮显示和隐藏的变换功能(两种方法)
2018/09/04 Javascript
微信小程序实现的picker多级联动功能示例
2019/05/23 Javascript
如何在JavaScript中谨慎使用代码注释
2019/06/21 Javascript
AI小程序之语音听写来了,十分钟掌握百度大脑语音听写全攻略
2020/03/13 Javascript
使用Python的Flask框架构建大型Web应用程序的结构示例
2016/06/04 Python
Python使用smtplib模块发送电子邮件的流程详解
2016/06/27 Python
基于Python函数的作用域规则和闭包(详解)
2017/11/29 Python
python去除扩展名的实例讲解
2018/04/23 Python
Django中的静态文件管理过程解析
2019/08/01 Python
python excel转换csv代码实例
2019/08/26 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
2020/02/13 Python
Django中的模型类设计及展示示例详解
2020/05/29 Python
英国日常交易网站:Wowcher
2018/09/04 全球购物
幼师自荐信范文
2013/10/06 职场文书
幼儿园小班教学反思
2014/02/02 职场文书
《鸟岛》教学反思
2014/04/26 职场文书
区级文明单位申报材料
2014/05/15 职场文书
解析高可用Redis服务架构分析与搭建方案
2021/06/20 Redis
GoFrame框架数据校验之校验结果Error接口对象
2022/06/21 Golang