Windows中给文件夹添加备注
起因
今天整理了一下文件夹,发现很多文件夹重名了,但是内容却不一样,就想着怎么把文件夹添加个备注来区分一下。百度转了一圈,方法倒是有,但是特别麻烦,知乎方案,要下软件,修改一大堆东西。
突破
我理想中是能直接编辑文件夹实现备注,但是windows的资源管理器我没法修改,只能从他给的备注入手。但当我看到下面这个blog的做法后,才有点我心中的意思。
windows系统给文件夹添加备注(详细版)
但是,还不够。
不够快捷,每次都要拖动文件夹到这个软件中。于是我想到将这个程序添加进鼠标右键,就可以像重命名一样进行修改。
步骤
我这里用的是python语言,考虑到一些小白可能没有python环境,于是将py文件进行编译成exe文件进行使用。
编译
有python环境的可以按下面教程进行编译,没有的直接下载我的exe文件
接下来贴上源代码remark.py
:
# -*- coding: utf-8 -*
# Filename: comment.py
__author__ = 'Piratf'
import sys
import os
# 获取系统编码,确保备注不会出现乱码
defEncoding = sys.getfilesystemencoding()
# 将代码中的字符转换为系统编码
def sysEncode(content):
return content.encode(defEncoding).decode(defEncoding)
def runCommand(command):
# 我使用 cxfreeze 打包成 exe 程序,如果用 popen 运行时会出现没有 subprocess 模块的 bug,所以用 system 运行系统命令
# 如果有更好的办法请联系我,感谢
os.system(command)
def re_enterMessage(message):
print(sysEncode(u" * " + message))
print(sysEncode(u" * 重新输入或按 ctrl + c 退出程序") + os.linesep)
def getSettingFilePath(fpath):
return fpath + os.sep + 'desktop.ini'
def addCommentToFolder(fpath, comment):
content = sysEncode(u'[.ShellClassInfo]' + os.linesep + 'InfoTip=')
# 开始设置备注信息
settingFilePath = getSettingFilePath(fpath)
with open(settingFilePath, 'w') as f:
f.write(content)
f.write(sysEncode(comment + os.linesep))
# 添加保护
runCommand('attrib ' + settingFilePath + ' +s +h')
runCommand('attrib ' + fpath + ' +s ')
print(sysEncode(u"备注添加成功~"))
print(sysEncode(u"备注可能过一会才会显示,不要着急"))
def addComment(fpath=None, comment=None):
inputPathMsg = sysEncode(u"请输入文件夹路径(或拖动文件夹到这里): ")
inputCommentMsg = sysEncode(u"请输入文件夹备注:")
# 输入文件夹路径
if (fpath == None):
if (len(sys.argv) == 1):
fpath = input(inputPathMsg)
else:
fpath = sys.argv[1]
# 判断路径是否存在文件夹
while not os.path.isdir(fpath):
re_enterMessage(u"你输入的不是一个文件夹路径")
fpath = input(inputPathMsg)
settingFilePath = getSettingFilePath(fpath)
# 判断设置文件是否已经存在
if (os.path.exists(settingFilePath)):
# 去除保护属性
runCommand('attrib ' + settingFilePath + ' -s -h')
# 输入文件夹的备注
if (comment == None):
comment = input(inputCommentMsg)
while not comment:
re_enterMessage(u"备注不要为空哦")
comment = input(inputCommentMsg)
addCommentToFolder(fpath, comment)
if __name__ == '__main__':
addComment()
安装pyinstaller
pip install pyinstaller
将remark.py
使用cmd输入
pyinstaller -F remark.py
编译success后,dist里面就是编译完成的exe文件。
添加右键菜单
将remark.exe随便放置个位置。例如我放在D:\文件夹备注程序\remark.exe
然后在随便哪个目录创建一个addRemarks.reg
文件,写入下面的文件。记得替换你自己的文件路径。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Folder\shell\添加备注\command]
@="D:\文件夹备注程序\remark.exe \"%1\""
双击运行即可。
右键就出来了。
评论区